7

有谁知道我如何检测设备上的耳机插孔是否在 Android 上拔下?我有一个音乐播放器,拔下耳机时我需要暂停音乐。我发现最接近的是使用AudioManager. 这是正确的方向吗?

4

1 回答 1

13

这就是我最终做的事情:

private class NoisyAudioStreamReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (AudioManager.ACTION_AUDIO_BECOMING_NOISY.equals(intent.getAction())) {
            pause();
        }
    }
}

private IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_AUDIO_BECOMING_NOISY);

private void startPlayback() {
    registerReceiver(myNoisyAudioStreamReceiver(), intentFilter);
}

private void stopPlayback() {
    unregisterReceiver(myNoisyAudioStreamReceiver);
}

我在这个链接找到了答案:http: //developer.android.com/training/managing-audio/audio-output.html

于 2012-04-03T00:34:29.793 回答