我正在尝试使用命令行在Android设备上启用禁用蓝牙。
我可以使用
启用它 adb shell am start -a android.bluetooth.adapter.action.REQUEST_ENABLE
但它会提示用户“允许”或“拒绝”。
我还看到可以选择首先启动ble设置,如
adb shell am start -a android.settings.BLUETOOTH_SETTINGS
然后启用禁用adb shell input keyevent **
但它不会与设备无关。
答案 0 :(得分:14)
启用:
adb shell service call bluetooth_manager 6
要禁用:
adb shell service call bluetooth_manager 8
答案 1 :(得分:3)
要运行先前评论中列出的命令,您需要是root:
adb root
启用:
adb shell service call bluetooth_manager 6
禁用:
adb shell service call bluetooth_manager 8
答案 2 :(得分:3)
启用:
trial_vec = np.tile(np.arange(16)+1, 10)
stimulus_vec = np.repeat([-2., -1.75, -1., -0.75, -0.5, 0.5, 1., 1.25, 1.75, 2.5 ], 16)
data_vec = np.random.randint(0, 16, size=160)
spi_num = pd.DataFrame({'trial': trial_vec, 'stimulus': stimulus_vec, 'data': data_vec}).astype('object')
要禁用:
adb shell service call bluetooth_manager 6
在三星Galaxy S7上测试并使用过。
答案 3 :(得分:1)
在小米Mi 4i / MIUI 9上:
要启用:
adb shell服务调用bluetooth_manager 8
要禁用:
adb shell服务调用bluetooth_manager 10
这也可以在Andorid中运行,例如:
服务呼叫bluetooth_manager 10
答案 4 :(得分:1)
正如awm129所指出的那样,使用service call
的解决方案与设备无关。虽然我无法完全消除对service call
的使用,但以下解决方案应该与设备无关:
要禁用:
pm disable com.android.bluetooth
要启用:
pm enable com.android.bluetooth
service call bluetooth_manager 6
我希望有人最终会找到无service call
的解决方案。
答案 5 :(得分:1)
您可以获取的蓝牙状态
adb shell settings get global bluetooth_on
或
adb shell settings list global |grep ^bluetooth_on
启用蓝牙
adb shell settings put global bluetooth_on 1
禁用蓝牙
adb shell settings put global bluetooth_on 0
通过-无需请求,请使用启用
adb shell am broadcast -a android.intent.action.BLUETOOTH_ENABLE --ez state true
通过关键事件
adb shell am start -a android.settings.BLUETOOTH_SETTINGS
adb shell input keyevent 19
adb shell input keyevent 23
答案 6 :(得分:0)
启用
svc bluetooth enable
要禁用
svc bluetooth disable
答案 7 :(得分:0)
对于那些想知道数字6和8是从哪里来的人们。它来自以下帮助文件:https://android.googlesource.com/platform/system/bt/+/master/binder/android/bluetooth/IBluetoothManager.aidl 从此帮助列表中列出的第一个功能开始计数,您会看到启用功能是列表中的第6个功能,而禁用功能是列表中的第8个功能。
答案 8 :(得分:0)
我的信誉点不足,无法添加评论,因此我正在跟踪TripeHound对wuseman的回答的评论。
我尝试了TripeHound设置蓝牙全局设置的方法(
adb shell settings put global bluetooth_on 1
)在Samsung Galaxy Tab A(运行Android 10的SAMSUNG SM-T515,内核4.4.177)上,它确实确实可以正常工作。但是,打开快捷设置菜单时,蓝牙图标不会显示更改,当您进入完整设置菜单时,蓝牙图标也不会显示更改。
也就是说,如果我在平板电脑确实会以正确的状态重新启动之后立即重新启动平板电脑,那么我不确定是否有必要以某种方式重新读取全局设置以确保蓝牙无线电确实关闭。 >
评论表示赞赏!
答案 9 :(得分:0)
只需使用com.intangibleobject.securesettings.plugin。 它允许各种蓝牙装置,以及一个接一个的连接/断开设备。