# \[ANDROID\] BLE VERSION Android 12

**URL:** <https://discourse.processing.org/t/android-ble-version-android-12/35404>\
**Category:** Processing for Android\
**Created:** [February 24, 2022, 1:23am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404 "2022-02-24T01:23:07Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![GWAK](https://avatars.discourse-cdn.com/v4/letter/g/13edae/32.png) [@GWAK](https://discourse.processing.org/u/GWAK)\
**Post date:** [February 24, 2022, 1:23am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/1 "2022-02-24T01:23:07Z")

</div>

In Android version 12, BLE SCAN operation is a problem.

In case you want to solve this, I found the site address.

> <https://stackoverflow.com/questions/70578601/android-12-ble-scan-does-not-find-any-devices>

`android:usesPermissionFlags="neverForLocation"`

How do I add the above in ‘Processing’?

---

<div class="post-metadata">

**Author:** ![svan](https://avatars.discourse-cdn.com/v4/letter/s/82dd89/32.png) [@svan](https://discourse.processing.org/u/svan)\
**Post date:** [February 24, 2022, 6:18am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/2 "2022-02-24T06:18:05Z")

</div>

[https://developer.android.com/guide/topics/connectivity/bluetooth/permissions](https://developer.android.com/guide/topics/connectivity/bluetooth/permissions)

The following code snippet shows how to update your app’s manifest file:

```auto
<manifest>
    <!-- Include "neverForLocation" only if you can strongly assert that
         your app never derives physical location from Bluetooth scan results. -->
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN"
                     android:usesPermissionFlags="neverForLocation" />

    <!-- Not needed if you can strongly assert that your app never derives
         physical location from Bluetooth scan results and doesn't need location
         access for any other purpose. -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    ...
</manifest>

```

---

<div class="post-metadata">

**Author:** ![GWAK](https://avatars.discourse-cdn.com/v4/letter/g/13edae/32.png) [@GWAK](https://discourse.processing.org/u/GWAK)\
**Post date:** [February 24, 2022, 6:34am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/3 "2022-02-24T06:34:13Z")

</div>

@svan

Thanks for the kind reply and explanation.  
Have you ever proceeded with that?  
I tried to go ahead and process it, but it didn’t work.  
A debugging error has occurred.

---

<div class="post-metadata">

**Author:** ![svan](https://avatars.discourse-cdn.com/v4/letter/s/82dd89/32.png) [@svan](https://discourse.processing.org/u/svan)\
**Post date:** [February 24, 2022, 6:51am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/4 "2022-02-24T06:51:01Z")

</div>

I never got BLE to work. I saw the reference and thought it answered your question. What is the ‘debugging error’?

---

<div class="post-metadata">

**Author:** ![GWAK](https://avatars.discourse-cdn.com/v4/letter/g/13edae/32.png) [@GWAK](https://discourse.processing.org/u/GWAK)\
**Post date:** [February 26, 2022, 11:17am UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/5 "2022-02-26T11:17:57Z")

</div>

```auto
    </application>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
    <uses-permission android:name="android.permission.BLUETOOTH" android:maxSdkVersion="30" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30" />
    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/>
    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"/>
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN"
                     android:usesPermissionFlags="neverForLocation" />
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
</manifest>

```

@svan

 ![fig](https://canada1.discourse-cdn.com/flex036/uploads/processingfoundation1/original/2X/8/8ffdf1018f980101432443e87a8fc3c59172c934.jpeg)

> FAILURE: Build failed with an exception.
> 
> - What went wrong:  
> Execution failed for task ‘:app:processDebugResources’.
> 
> > A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade  
> > Android resource linking failed  
> > C:\Users\ANDROID\AppData\Local\Temp\android678394571626604992sketch\app\build\intermediates\packaged\_manifests\debug\AndroidManifest.xml:22: AAPT: error: attribute android:usesPermissionFlags not found.
> 
> - Try:  
> Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
> 
> - Get more help at [https://help.gradle.org](https://help.gradle.org)
> 
> BUILD FAILED in 3s  
> 20 actionable tasks: 20 executed

Dear svan / @svan

It doesn’t compile as above.  
Adding android:usesPermissionFlags=“neverForLocation” gives an error.

Why?  
Or is there any workaround?

---

<div class="post-metadata">

**Author:** ![Rupesh\_Kumar](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/rupesh_kumar/32/12638_2.png) [@Rupesh\_Kumar](https://discourse.processing.org/u/Rupesh_Kumar)\
**Post date:** [May 12, 2022, 10:32pm UTC](https://discourse.processing.org/t/android-ble-version-android-12/35404/6 "2022-05-12T22:32:22Z")

</div>

@GWAK The permission that you are trying to include comes with Android 12 (API 31). Changing android:maxSdkVersion=“30” to android:maxSdkVersion=“31” in the manifest may resolve. Android Mode recently upgraded to use Android 30 and can shift to Android 31 in the near future.

Best,  
Rupesh
