我想写一个程序,可以暂停和播放 android 中的每个媒体播放器。我如何设置这个程序的优先级高于其他程序?我也写了下面的代码
public static final String SERVICECMD = "com.android.music.musicservicecommand";
public static final String CMDNAME = "command";
public static final String CMDPAUSE = "pause";
public static final String CMDPLAY = "play";
public static final String CMDTOGGLEPAUSE = "togglepause";
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
if (mAudioManager.isMusicActive()) {
Intent i = new Intent(SERVICECMD);
i.putExtra(CMDNAME, CMDPAUSE);
MainActivity.this.sendBroadcast(i);
Toast.makeText(this, "media player is pause!", Toast.LENGTH_LONG).show();
}
if (!mAudioManager.isMusicActive()) {
Intent i = new Intent(SERVICECMD);
i.putExtra(CMDNAME, CMDPLAY);
MainActivity.this.sendBroadcast(i);
Toast.makeText(this, "media player is play!", Toast.LENGTH_LONG).show();
}
它可以暂停所有玩家,但我不知道如何再次播放它们。我可以玩一些玩家但不是所有的我不知道为什么???
最佳答案
为播放和暂停按钮设置一个 onClick
您必须找到一种方法来检索所有 MediaPlayer 对象。
暂停:
mMediaPlayer.pause(); // Pause the MediaPlayer
播放:
mMediaPlayer.prepare(); // Prepares the MediaPlayer to play a song
** 请也有一个 onPrepare 方法
mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.start(); // play!
}
此外,这里有一个引用供您引用: https://github.com/naman14/Timber
这个开源音乐应用程序应该包含您创建音乐播放器 Controller 等所需的大部分相关资源。您将能够理解它是如何工作的。
此外,除非您尚未实现 MediaPlayer 对象,否则您提供的代码将不允许我帮助您识别任何问题。
原因如下:Difference between Audiomanager and MediaPlayer
-- 编辑--
以下是您可以通过 MediaPlayerRegistry 停止其他 MediaPlayer 实例的方法。
关于java - 如何暂停和播放音乐播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40937720/