如何从其他活动支持后播放媒体播放器?

时间:2016-11-02 08:07:20

标签: android android-mediaplayer

当我启动应用程序并单击按钮时,Media Player运行良好。但是,当我点击Home按钮或进入另一个活动时,当我回到MainActivity时,我再也无法播放Media文件了。这是我的代码:

public void playMedia(View view){

    if(mp.isPlaying()){
        mp.pause();
    }
    else
        mp.start();
}

@Override
protected void onPause(){
    super.onPause();
    SOSPlayer.pause();
}

@Override
protected void onResume(){
    super.onResume();
    SOSPlayer.seekTo(0);
}

@Override
protected void onDestroy() {
    super.onDestroy();
    SOSPlayer.stop();
    SOSPlayer.release();
}
@Override
protected void onStop() {
    super.onStop();
    SOSPlayer.stop();
}

1 个答案:

答案 0 :(得分:0)

我把你在布局上调用playMedia方法称为:

<Button
...
android:onClick="playMedia"
..
/>

你需要的是在从之前的活动中恢复之后再次播放该媒体..你需要使用startActivityForResult开始该活动以获得结果并听取onActivityResult的反馈以再次播放媒体。这是一个简单的实现:

    private static final int REQUEST_ID = 0x0001;
    private void startActivity() {
        Intent intent = new Intent(getApplicationContext(), DifferentActivity.class);
        startActivityForResult(intent, REQUEST_ID);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        switch (requestCode) {
            case REQUEST_ID:
                playMedia(null);
                break;
            default:
                super.onActivityResult(requestCode, resultCode, data);
        }

    }