我写了一个小应用程序来与蓝牙设备通信。当我启动应用程序时,蓝牙将自动启用。我用这段代码做到了这一点:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (!mBluetoothAdapter.isEnabled()) {
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
}
但是在自动启用蓝牙后我无法在我的应用程序中使用蓝牙。我必须重新启动应用程序或关闭我的应用程序正常工作的屏幕。
我尝试了这种解决方法,在启用蓝牙后重启活动:
public void onCreate(Bundle savedInstanceState) {
....
Intent intent = getIntent();
finish();
startActivity(intent);
}
但是我的应用程序只会关闭而不会再次启动。有没有人知道如何解决这个问题,当我用app启动它时,我不能使用蓝牙?
由于
干杯
菲利克斯
答案 0 :(得分:1)
“但是在自动启用蓝牙后,我无法在我的应用程序中使用蓝牙。”
启用蓝牙需要一些时间。您应该正在侦听BluetoothAdapter.ACTION_STATE_CHANGED意图以查看实际启用适配器的时间。