我是Android的新手,并坚持停止同一活动中的媒体播放器。
我想创建一个应用程序,为不同的活动播放不同的音乐
创建第一个活动后,我无法停止播放音乐
即使我退出我的应用程序,音乐仍在播放。
这是我的代码:
public class LayoutThreeActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_three);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.layout_three, menu);
return true;
}
public void openNewActivity(View view) {
// Do something in response to button
Intent intent = new Intent(this, LayoutOneActivity.class);
startActivity(intent);
MediaPlayer mp = MediaPlayer.create(this, R.raw.song2);
mp.start();
}
答案 0 :(得分:4)
您必须释放播放器OnPause或OnDestroy方法。
@Override
public void onDestroy() {
if (mp!= null) mp.release();
}
答案 1 :(得分:0)
我想创建一个可以播放不同音乐的应用 活动。
然后把这个东西放在你的onCreate方法&下面的类名称在每个要播放MediaPlayer的活动中:
MediaPlayer mp=null;
在你的onCreate()方法中启动你的音乐&从openNewActivity()方法中删除此代码:
mp = MediaPlayer.create(this, R.raw.song2);
mp.start();
创建第一个活动后,我无法停止播放音乐。甚至 当我退出我的应用程序时,音乐仍在播放。
然后将其放入您启动MediaPlayer的每个活动中:
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
mp.stop();
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
mp.stop();
}