蓝牙启用窗口已打开

时间:2019-07-11 00:53:42

标签: java android

我刚刚开始学习Java和处理蓝牙。要启用蓝牙,我使用以下代码:

Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, 1);

如果蓝牙已关闭,则执行此代码时,用户将具有一个窗口,可以在“启用蓝牙”或“取消”之间进行选择。 当用户做出选择并且此窗口关闭时,我需要执行另一个代码。

如何检查此窗口是否现在打开?

我知道有一个“ onActivityResult”方法可以在窗口关闭时返回结果,但是绝对不能使用它,因此我正在寻找其他方法。

import android.bluetooth.BluetoothManager;
import android.bluetooth.BluetoothAdapter;
import android.content.Intent;


public class MyBluetooth {

  private BluetoothManager bluetoothManager;
  private BluetoothAdapter bluetoothAdapter;



  public void Init() {
    bluetoothManager = (BluetoothManager) Context.getSystemService(Context.BLUETOOTH_SERVICE);
    bluetoothAdapter = bluetoothManager.getAdapter();

    if (bluetoothAdapter == null || !bluetoothAdapter.isEnabled()) {
      Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
      startActivityForResult(enableBtIntent, 1);
    }
  }
}

1 个答案:

答案 0 :(得分:0)

要详细说明为什么不能使用onActivityResult()吗? 因为在该窗口关闭时,您将在该处处理应用程序并运行所需的代码。