user2822074
user2822074

Reputation: 191

java.lang.SecurityException: Need BLUETOOTH PRIVILEGED permission

Has anyone meet the same problem as the following error message shows when calling bluetoothDeive.createBond() method with android 4.4 api?

java.lang.SecurityException: Need BLUETOOTH PRIVILEGED permission

Note: BLUETOOTH_ADMIN permission is already included in AndroidManifest file.

Upvotes: 19

Views: 28513

Answers (5)

Dino Tw
Dino Tw

Reputation: 3321

Got the exact error message.

Took me an hour to realize that the bluetooth on the phone is not enabled. After turning it on, it works as expected.

Upvotes: 43

wsgh
wsgh

Reputation: 235

You can't use this permission if your app is a third party app (non-system app). To learn more, see Android API: BLUETOOTH_PRIVILEGED

Upvotes: 22

Gabo Alvarez
Gabo Alvarez

Reputation: 139

Try this:

1) remove "android.permission.BLUETOOTH_PRIVILEGED" from your permissions.
2) remove "android.permission.BLUETOOTH".
3) add "android.permission.BLUETOOTH_ADMIN" and just that.

The reference says that is the only permission needed.https://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#createBond()

EDIT: if you already included "bluetooth_admin", maybe its a platform problem.They may have not supported that functionality earlier. Maybe you should target a higher min-sdk-platform , Im using Android 20 as the minimum (but never tried that function).

Upvotes: -4

LadyG
LadyG

Reputation: 11

I run on this error, and only I can say, you need to install your app as a system privileged app, to go to system folder and try to copy app to the app folder or priv_app folder. On my Android platform, when I made folder inside priv_app folder for my app and copied my apk to it and restarted Android, everything worked OK. I my case I added in manifest all this permissions at the beginning, but it worked only after this step above.

Upvotes: 1

MrBoutte'
MrBoutte'

Reputation: 349

try this in your manifest

    <user-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

notice the user not uses-permission on the first line. Until I switched that, For some reason I kept getting

java.lang.SecurityException: Need BLUETOOTH_ADMIN permission

Upvotes: -4

Related Questions