我想编写一个可以暂停和播放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();
}
它可以暂停每个玩家,但我不知道如何再次玩它们。我可以玩一些球员,但不是所有球员,我不知道为什么???
答案 0 :(得分:1)
点击播放和暂停按钮
您必须找到一种方法来检索所有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
这个开源音乐应用程序应该具有创建音乐播放器控制器等所需的大部分相关资源。您将能够理解它是如何工作的。
此外,除非您尚未实施MediaPlayer对象,否则您提供的代码不会帮助您识别任何问题。
这就是为什么:Difference between Audiomanager and MediaPlayer
- 编辑 -
以下是如何通过MediaPlayerRegistry停止其他MediaPlayer实例。