Android 音乐播放器 ,防止耳机按键MediaButton 被 系统或其他第

mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);ComponentName rec = new ComponentName(getPackageName(),MediaButtonIntentReceiver.class.getName());mAudioManager.registerMediaButtonEventReceiver(rec);

先 注册 MediaButton的 Receiver

然后获取焦点 Listener 里面没有实现 。 只是看了下状态。

mAudioManager.requestAudioFocus(new OnAudioFocusChangeListener() {@Overridepublic void onAudioFocusChange(int focusChange) {//操作待定switch (focusChange) {case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT:// Pause playbackSystemLog.error(CLASS_NAME, "onAudioFocusChange", "AUDIOFOCUS_LOSS_TRANSIENT");break;case AudioManager.AUDIOFOCUS_LOSS:// am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);// am.abandonAudioFocus(afChangeListener);// // Stop playbackSystemLog.error(CLASS_NAME, "onAudioFocusChange", "AUDIOFOCUS_LOSS");break;case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:// Lower the volumeSystemLog.error(CLASS_NAME, "onAudioFocusChange", "AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK");break;case AudioManager.AUDIOFOCUS_GAIN:// Resume playback or Raise it back to normalSystemLog.error(CLASS_NAME, "onAudioFocusChange", "AUDIOFOCUS_GAIN");break;}}} , AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);//AudioManager.AUDIOFOCUS_GAIN持续获取焦点

使 当前的 receiver 持续获得焦点。 这样可以 防止 AudioManager QQreceivermAudioManagerreceiver

,天不负;卧薪尝胆,三千越甲可吞吴。

Android 音乐播放器 ,防止耳机按键MediaButton 被 系统或其他第

相关文章:

你感兴趣的文章:

标签云: