我正在尝试使用此 ADB 命令进入 Android 上的蓝牙设置页面。
adb shell am start -a android.settings.BLUETOOTH_SETTINGS
但是,我收到响应的 SecurityException,说我需要 android.permission.BLUETOOTH_ADMIN 权限
Starting: Intent { act=android.settings.BLUETOOTH_SETTINGS }
Security exception: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS flg=0x10000000 cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from null (pid=19661, uid=2000) requires android.permission.BLUETOOTH_ADMIN
java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS flg=0x10000000 cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from null (pid=19661, uid=2000) requires android.permission.BLUETOOTH_ADMIN
at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:1922)
at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:631)
at com.android.server.am.ActivityStarter.startActivityLocked(ActivityStarter.java:411)
at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1281)
at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:6014)
at com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:424)
at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:142)
at android.os.ShellCommand.exec(ShellCommand.java:96)
at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:18782)
at android.os.Binder.shellCommand(Binder.java:581)
at android.os.Binder.onTransact(Binder.java:481)
at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:4775)
at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3844)
at android.os.Binder.execTransact(Binder.java:682)
关于如何通过 ADB 解决此问题或使用其他方法打开蓝牙设置页面的任何线索?
最佳答案
如果您要配对设备,则可以使用 adb shell am start -a android.bluetooth.devicepicker.action.LAUNCH
。或者您可以使用 adb shell am start -a android.settings.SETTINGS
并导航至蓝牙设置。
否则,您可能可以制作一个具有 BLUETOOTH_ADMIN 权限的简单应用并按照答案 here 进行操作
关于android - 启动 BLUETOOTH_SETTINGS 操作返回 SecurityException(需要 BLUETOOTH_ADMIN 权限),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59216528/