在阅读了 android 开发指南和此处的一些帖子后,我实现了一个简单的解决方案,以在运行 Android 2.3.3 的平板电脑中捕获 HEADSET UNPLUG 事件。
不幸的是,我似乎遗漏了一些东西,因为 onReceive() 事件从未被捕获。
下面是实现的代码:
public class MusicIntentReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(android.media.AudioManager.ACTION_AUDIO_BECOMING_NOISY)) {
Toast.makeText(context, "Headphones disconnected.", Toast.LENGTH_SHORT).show();
}
}
}
在 android 清单文件中:
<receiver android:name=".MusicIntentReceiver">
<intent-filter>
<action android:name="android.media.AUDIO_BECOMING_NOISY" />
</intent-filter>
</receiver>
我错过了什么?