2016-11-02 7 views
0

メディアプレーヤーは、アプリケーションを起動してボタンをクリックすると正常に機能します。しかし、ホームボタンを押したときや、別のアクティビティに出たときにMainActivityに戻ったときにメディアファイルを再生できなくなってしまった。ここに私のコードは次のとおりです。あなたのように、レイアウト上のplayMediaメソッドを呼び出す他のアクティビティからバッキングした後にメディアプレーヤーを再生するには?

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(); 
} 
+0

onResume()内でプレーヤーを起動します。 – Archana

答えて

0

私の事:あなたが必要なもの

<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); 
     } 

    } 
関連する問題