如果我的Android手机已经连接了蓝牙耳机(配对并连接)。我如何获得有关该特定耳机的信息。
使用getBondedDevices()方法我获得所有配对设备的列表。我只需要有关CONNECTED设备的信息。
我不能等待广播接收器检查状态,因为我在申请开始时需要这些信息。所以请建议有没有办法获得这些信息,而无需等待广播。
您可以通过API 11及更高版本中的IBluetoothA2dp接口执行此操作。有关此处的更多信息:Android connect to a paired bluetooth headset
这是一个很好的资源,可以看到API 10和11之间的这个界面可用的区别,它有很大的变化。 http://grepcode.com/file_/repository.grepcode.com/java/ext/com.google.android/android/4.0.1_r1/android/bluetooth/BluetoothA2dp.java/?v=diff&id2=2.2_r1.1
希望有所帮助。
您可以使用getConnectedDevices作为HEADSET配置文件来获取它所连接的设备。
检查一下,看看是否连接了耳机(仅限ICS):
public boolean isVoiceConnected()
{
boolean retval = true;
try {
retval = BluetoothAdapter.getDefaultAdapter().getProfileConnectionState(android.bluetooth.BluetoothProfile.HEADSET) != android.bluetooth.BluetoothProfile.STATE_DISCONNECTED;
} catch (Exception exc) {
// nothing to do
}
return retval;
}