android - 如何在android中暂停不同的音乐播放器?

标签 android android-audiomanager android-music-player

我使用此代码来暂停音乐播放器,它会暂停默认音乐播放器,但如果安装了其他音乐播放器则不起作用。例如poweramp、realplayer等

下面是我用来暂停音乐的代码:-

AudioManager mAudioManager = (AudioManager)getSystemService(AUDIO_SERVICE);    

if (mAudioManager.isMusicActive()) 
{
  Intent i = new Intent("com.android.music.musicservicecommand");

  i.putExtra("command", "pause");
  ListenAndSleep.this.sendBroadcast(i);
}

最佳答案

简单地使用媒体按钮不是更容易吗?大多数(如果不是全部)玩家应该处理这些问题。

private static void sendMediaButton(Context context, int keyCode) {
    KeyEvent keyEvent = new KeyEvent(KeyEvent.ACTION_DOWN, keyCode);
    Intent intent = new Intent(Intent.ACTION_MEDIA_BUTTON);
    intent.putExtra(Intent.EXTRA_KEY_EVENT, keyEvent);
    context.sendOrderedBroadcast(intent, null);

    keyEvent = new KeyEvent(KeyEvent.ACTION_UP, keyCode);
    intent = new Intent(Intent.ACTION_MEDIA_BUTTON);
    intent.putExtra(Intent.EXTRA_KEY_EVENT, keyEvent);
    context.sendOrderedBroadcast(intent, null);
}

然后你可以使用:

sendMediaButton(getApplicationContext(), KeyEvent.KEYCODE_MEDIA_PAUSE);

您还可以发送停止键事件。这是相关 key 的链接,http://developer.android.com/reference/android/view/KeyEvent.html#KEYCODE_MEDIA_PAUSE

关于android - 如何在android中暂停不同的音乐播放器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21633495/

相关文章:

android - 为什么 abandonAudioFocus 在 Android 音乐应用程序中不起作用

android - 如何停止其他应用程序播放我当前 Activity 中的音乐?

android - 如何在android上以编程方式将音量调到最大?

java - Android Studio - 锁定手机时不要关闭应用程序

android - 将 GPS 坐标发送到服务器

android - 在哪里可以找到与混淆器相关的 Android 构建选项的文档

android - 屏幕关闭时,MediaPlayer 在 Lollipop 上过早切断播放

java - 如何仅将来电铃声静音而不将短信静音

android - 关闭应用程序时使用 MediaPlayer 的服务不会停止 - Android

android - 调用 OnPrepareOptionsMenu 会产生空指针异常