2012-02-04 10 views
0

ここで私の問題は、私がそれをしたいように音楽を開始するアクティビティを開始するときですが、私がアクティビティを終了するとき(戻るボタンを押すと)、アプリケーションがクラッシュし、「予期せず停止しました」。あなたはメディアプレーヤーのリソースを解放する必要がある前に、私はこの?Audioを停止するには?

public class Run extends Activity { 

/** The OpenGL View */ 
private GLSurfaceView glSurface; 
private MediaPlayer mPlayer; 

/** 
* Initiate the OpenGL View and set our own 
*/ 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    //Create an Instance with this Activity 
    glSurface = new GLSurfaceView(this); 
    //Set our own Renderer and hand the renderer this Activity Context 
    glSurface.setRenderer(new Lesson06(this)); 
    //Set the GLSurface as View to this Activity 
    setContentView(glSurface); 

    new Thread(new Runnable() { 
     public void run() { 
      try{ 
       MediaPlayer mPlayer = MediaPlayer.create(Run.this, R.drawable.theygonelovemeformyambition); 
       mPlayer.setLooping(true); 
       mPlayer.start(); 
       while(mPlayer.isPlaying()){ 
        android.os.SystemClock.sleep(100); 
       } 
      }catch(Exception e){ 
       String TAG = null; 
       Log.d(TAG,"ERROR PLAYING"); 
       e.printStackTrace(); 
      } 
     }}).start(); 

} 

@Override 
protected void onDestroy() { 
    // TODO Auto-generated method stub 
    super.onDestroy(); 
    mPlayer.release(); 
} 
} 

答えて

0

ハイテクを行うことができますどのように。オーディオSTOPを持っていると、予期せぬ停止せずに別のアクティビティに進みます。あなたは以下のようなメディアプレーヤーを停止する必要があります。

@Override 
protected void onDestroy() { 
    // TODO Auto-generated method stub 

    if(mPlayer.isPlaying()) 
     mPlayer.stop(); 

    mPlayer.release(); 

    super.onDestroy(); 
} 
+0

それはうまくいかない! Openglのための別のプロセスはありますか? – KaSiris

+0

エラーは何ですか? –

+0

行を変更する 'MediaPlayer mPlayer = MediaPlayer.create(Run.this、R.drawable.theygonelovemeformyambition);' to 'mPlayer = MediaPlayer.create(Run.this、R.drawable.theygeloveweformyambition);' –

0

mPlayerを初期化していません
public void run()では、新しいMediaPlayer を作成しているだけなので、mPlayer.release();あなたはnullのmPlayerに興味を持っているので、nullPointerExceptionerrorを得るでしょう(私が推測すると)

関連する問題