首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动BLUETOOTH_SETTINGS操作返回SecurityException (需要BLUETOOTH_ADMIN权限)

启动BLUETOOTH_SETTINGS操作返回SecurityException (需要BLUETOOTH_ADMIN权限)
EN

Stack Overflow用户
提问于 2019-12-06 16:02:21
回答 1查看 761关注 0票数 3

我正试图用这个ADB命令访问Android上的蓝牙设置页面。

代码语言:javascript
复制
adb shell am start -a android.settings.BLUETOOTH_SETTINGS

但是,我得到了一个SecurityException来表示我需要获得SecurityException的许可。

代码语言:javascript
复制
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)

关于如何通过亚行打开蓝牙设置页面,如何解决这一问题或其他方法,有什么线索吗?

EN

回答 1

Stack Overflow用户

发布于 2019-12-06 19:21:29

如果您正在寻找配对的设备,那么您可以使用adb shell am start -a android.bluetooth.devicepicker.action.LAUNCH。或者您可以使用adb shell am start -a android.settings.SETTINGS并导航到蓝牙设置。

否则,您可能会制作一个简单的应用程序,该应用程序具有BLUETOOTH_ADMIN权限并遵循答案here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59216528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档