Я программирую для android 2.2 API Level 8 и пытаюсь выяснить, подключена ли в настоящее время Bluetooth-гарнитура при первом запуске приложения.Кажется, я не могу найти решение этой проблемы.
Как только мое приложение запущено и работает, я могу прослушивать BluetoothDevice.ACTION_ACL_CONNECTED и BluetoothDevice.ACTION_ACL_DISCONNECTED, как обозначено здесь , что прекрасно работает для вас,Но я не могу понять, как определить, перед включением BroadcastReceiver, подключена ли в настоящее время Bluetooth-гарнитура.
Я также выяснил, как определить, есть ли на устройстве сопряженные устройства, с помощью следующего.
BluetoothAdapter mBluetoothAdapter = null;
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if(mBluetoothAdapter != null)
{
Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
if (pairedDevices.size() != 0)
{
// the device has paired devices
for (BluetoothDevice device : pairedDevices)
{
Log.i(TAG, "device name: " + device.getName());
Log.i(TAG, "device address: " + device.getAddress());
}
}
else
{
// no paired devices
Log.i(TAG, "no paired devices");
}
}
Я надеюсь, что у кого-то уже есть решение этой проблемы для API уровня 8. Я понимаю, что в API 11 есть некоторые новые классы, такие как BluetoothProfile и BluetoothHeadset , который, вероятно, мог бы сделать это в 1 строке кода, но я снова пытаюсь сделать это на уровне API 8
Я готов попробовать что-нибудь на этом этапе.
Заранее спасибо
-H