0

xml ファイルにイメージビューとボタンがあります。image1 を読み込んで song1.mp3 ファイルを再生します。曲が終わったら、次の画像を読み込んで song2.mp3 の曲を再生し、最後の画像まで続けます。アプリケーションを閉じて終了するためのボタン。

      import android.media.MediaPlayer;
      import android.media.MediaPlayer.OnCompletionListener;
      import android.os.Bundle;
      import android.widget.ImageView;
      import android.app.Activity;
      import android.content.res.AssetFileDescriptor;

    public class MainActivity extends Activity {
    public MediaPlayer mpp;
    final int image[] = {R.drawable.apple,R.drawable.ball,R.drawable.cat};
    int i=0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
            final ImageView img = (ImageView) findViewById(R.id.img);


    String audio[]={"song1.mp3","song2.mp3","song3.mp3"};


    AssetFileDescriptor descriptor;
            try {
                descriptor = getAssets().openFd(audio[i]);
                mpp.setDataSource( descriptor.getFileDescriptor(), descriptor.getStartOffset(),descriptor.getLength());
                descriptor.close();
                mpp.prepare();
                mpp.start();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            mpp.setOnCompletionListener(new OnCompletionListener() {

                @Override
                public void onCompletion(MediaPlayer arg0) {
                    // TODO Auto-generated method stub
                    img.setImageResource(image[i]);
                    i++;
                    mpp.start();
                }
            });
} }

main.RuntimeException で致命的な例外が発生し、アクティビティを開始できません

4

0 に答える 0