此网站上有相当多的帖子(例如this,this或this)讨论了如何在Android上检测丢失的蓝牙连接。基本上,可以注册广告的行动
BluetoothAdapter.ACTION_ACL_DISCONNECT_REQUESTED
和BluetoothAdapter.ACTION_ACL_DISCONNECTED
。但是,如果有多个从属设备,我如何知道其中一个是否已断开连接或即将断开连接?
修改
BluetoothSocket
类的方法isConnected()
似乎很有用,但它需要API等级14(Android 4.0)或更高版本。答案 0 :(得分:1)
在Android中,您可以了解设备的状态。
您可以使用android.bluetooth.BluetoothProfile
界面。它提供了一个名为public abstract List<BluetoothDevice> getDevicesMatchingConnectionStates (int[] states)
的API
返回所有蓝牙设备的列表。您可以在参数数组中指定STATE_CONNECTED, STATE_CONNECTING, STATE_DISCONNECTED, STATE_DISCONNECTING
之类的状态。
有关详细信息,请参阅:
http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html#getDevicesMatchingConnectionStates(int[])