Android dev-guide といくつかの投稿を読んだ後、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>
私は何が欠けていますか?