mediaplayer.start()和mediaplayer.pause()使应用程序崩溃

时间:2019-03-22 10:33:27

标签: android

//导入了必需的库。

public class MainActivity extends AppCompatActivity {
    MediaPlayer mPlayer;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void playAudio(View view) {
        mPlayer.create(this, R.raw.hahah);
        mPlayer.start();
    }

    public void pauseAudio(View view) {
        mPlayer.pause();
    }

}

这是我的MainActivity。我按下播放或暂停按钮后,应用就会崩溃。当我同时移除两个按钮并允许它在onCreate方法中自动开始播放时,此应用程序可以正常工作。

3 个答案:

答案 0 :(得分:2)

您忘记了

MediaPlayer mPlayer =new MediaPlayer();  

在onCreate方法中

答案 1 :(得分:0)

使用class之前必须对其进行初始化。未为Object创建mplayer

通过onCreate()方法将其初始化

MediaPlayer mPlayer =new MediaPlayer(); 

答案 2 :(得分:0)

好吧,每当您定义变量但不为其赋值时,它将使应用程序崩溃。在这里,您正在创建MediaPlayer,但未分配它。您应该在您的onCreate()方法中添加以下代码:

MediaPlayer mMediaPlayer = new MediaPlayer();

这将创建MediaPlayer对象的新实例,您可以重用该类的功能。