isBluetoothA2dpOn无法正常工作

时间:2012-04-05 23:46:55

标签: android

我有一个在通话期间使用的服务,我试图找出是否连接了蓝牙耳机。但是当我使用am.isBluetoothA2dpOn()时,总是返回false。在通话期间,而不是在通话过程中,始终!

以下是我正在做的事情的样本:

AudioManager am = (AudioManager) getSystemService(AUDIO_SERVICE);
if(am.isBluetoothA2dpOn())
{
    Log.v(TAG, "Bluetooth headset is connected!");
}

我还在AndroidManifest.xml中使用以下权限

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.BLUETOOTH" />

另外:am.isWiredHeadsetOn()工作正常!?!

蓝牙设备已连接,我可以像使用它一样使用它。所以任何帮助都会很棒。

2 个答案:

答案 0 :(得分:0)

您想要检查isBluetoothScoOn()而不是A2DP

A2DP主要用于音乐和游戏,高品质音频。高级音频分发配置文件。

答案 1 :(得分:0)

如果您没有android.permission.MODIFY_AUDIO_SETTINGS

,isWiredHeadsetOn()会导致它返回false(但不会崩溃或引发异常)

我建议检查isBluetoothA2dpOn()是否需要相同的权限