私はアンドロイドプログラミングの初心者です。私の最初のアプリケーションは、Android メディア プレーヤーです。
2 つのボタンを作成しました。1 つは曲を再生するボタンで、もう 1 つは曲を停止するボタンです。
私のアプリケーションは正しく動作しています。問題は、再生して停止することはできますが、曲を再度再生できないことです。
使用しようとしましsetDataSource()
たが、エラーが発生します。
コードは次のとおりです。ファイルはraw/song.mp3
package com.example.test6;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mp = MediaPlayer.create(this,R.raw.song);
setContentView(R.layout.activity_main);
final Button btnPlay = (Button)this.findViewById(R.id.button1);
final Button btnStop = (Button)this.findViewById(R.id.button2);
btnPlay.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
mp.start();
}
});
btnStop.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
mp.stop();
mp.reset();
if(mp.isPlaying()){
mp.stop();
}else{
mp.setDataSource("res/raw/song.mp3");
mp.prepare();
mp.start();
}
});
}
}