HI,
我有一个使用蓝牙搜索设备的java应用程序。当用户按下本机蓝牙按钮将其关闭时,我的应用程序显示蓝牙状态处于脱机状态。当用户按下本机蓝牙按钮将其打开时,我的应用程序应该恢复工作,但事实并非如此。为了我的扫描恢复工作,我需要关闭并打开我的应用程序。
如何以编程方式解决此问题?
答案 0 :(得分:0)
确保您在清单中拥有以下权限:
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
您可以在活动或服务类中使用以下内容来启用蓝牙:
BluetoothAdapter.getDefaultAdapter().enable();
如果您在启用蓝牙时尝试侦听,请注册一个BroadcastReceiver,侦听BluetoothAdapter.ACTION_STATE_CHANGED操作:
final int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.STATE_OFF);
if (state == BluetoothAdapter.STATE_OFF) {
// Bluetooth is turned off
} else if (state == BluetoothAdapter.STATE_ON) {
// Do your scan
}