你好,我刚刚创建了一个基本的Android应用程序,它在按钮上播放不同的音乐.. 该应用程序在前几秒钟工作正常但是当我继续点击和点击时,它在某些时候停止播放音乐并且刚刚崩溃...... 我无法弄清楚问题是什么..请帮助我让它工作.. 谢谢。 这是我的代码: -
public class MainActivity extends AppCompatActivity {
MediaPlayer mediaPlayer;
public void PlayMusic(View view)
{
int ID = view.getId();
String NameID = view.getResources().getResourceEntryName(ID);
int sound= getResources().getIdentifier(NameID,"raw","com.example.pickachu.mypatatap");
mediaPlayer = MediaPlayer.create(this,sound);
mediaPlayer.start();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
答案 0 :(得分:0)
传递uri而不是字符串
mediaPlayer= MediaPlayer.create(this, Uri.parse(Environment.getExternalStorageDirectory().getPath()+ "/Music/music.mp3"));
mediaPlayer.setLooping(true);
mpintro.start();
答案 1 :(得分:0)
多次点击后声音无法播放,因为您必须获得IllegalStateException
,因为当您点击多次时,releasing the Mediaplayer object并且Mediaplayer Lifecycles无法正常管理。
完成声音后,您可以使用setOnCompletionListener(MediaPlayer.OnCompletionListener listener)
释放mediaPlayer
:
mediaPlayer = MediaPlayer.create(this,sound);
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.reset();
mp.release();
mediaplayer = null;
}
});
mediaPlayer.start();