0

我们如何在应用程序启动时获得蓝牙可发现状态

我有一个用于显示状态的图像视图,但它在应用程序开始时未显示适当的图像

在 oncreate() 我有以下代码

 mBtAdapter = BluetoothAdapter.getDefaultAdapter();


    if(mBtAdapter.isDiscovering()){
        bt_strength.setImageResource(R.drawable.bt);

    }
    else if (!mBtAdapter.isDiscovering()){
        bt_strength.setImageResource(R.drawable.bt_grey);
    }

即使这段代码也不起作用

      mBtAdapter = BluetoothAdapter.getDefaultAdapter();

     int status = mBtAdapter.getState();
    if(status == mBtAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE){
        bt_strength.setImageResource(R.drawable.bt);

    }
    else if (status == mBtAdapter.SCAN_MODE_NONE){
        bt_strength.setImageResource(R.drawable.bt_grey);
    }

我怎样才能解决这个问题?任何帮助表示赞赏

4

1 回答 1

3

使用下面的代码

   mBtAdapter = BluetoothAdapter.getDefaultAdapter();


    if(mBtAdapter.getScanMode() == BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE)
    {
        bt_strength.setImageResource(R.drawable.bt);

    }
    else 
    {
        bt_strength.setImageResource(R.drawable.bt_grey);
    }
于 2012-06-18T06:01:59.303 回答