Android系统封装了许多音频流类型,如多媒体,铃声,闹钟等,一般来说音频播放app使用的是STREAM_MUSIC流。
二、使用耳机的实体按键控制app音频的播放(play,pause,stop,skip,previous):
当用户按下其中一个按键时,系统会发出广播,action为 ACTION_MEDIA_BUTTON,
所以为了让你的app能够相应相应的广播,应该在注册一个广播接收者,如:
一、使用音量键控制app的播放音量:
setVolumeControlStream(AudioManager.STREAM_MUSIC);
二、使用耳机的实体按键控制app音频的播放(play,pause,stop,skip,previous):
当用户按下其中一个按键时,系统会发出广播,action为 ACTION_MEDIA_BUTTON,
所以为了让你的app能够相应相应的广播,应该在注册一个广播接收者,如:
<receiver android:name=".RemoteControlReceiver">
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
广播接收者必须能对不同的按键做出正确的响应,具体是哪个按键按下的信息包含在了广播Intent的 EXTRA_KEY_EVENT键值对中,
可以从该键值对中获取相应信息,如:
public class RemoteControlReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
KeyEvent event = (KeyEvent)intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
if