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

Android mediaplayer.start()和mediaplayer.pause()使应用程序崩溃,android,Android,//导入必要的库 public class MainActivity extends AppCompatActivity { MediaPlayer mPlayer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main)

//导入必要的库

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();
    }

}
这是我的主要活动。我一按“播放”或“暂停”按钮,应用程序就会崩溃。当我删除两个按钮并允许它以onCreate方法自动开始播放时,此应用程序就会工作。

您忘记了

MediaPlayer mPlayer =new MediaPlayer();  

在onCreate方法中,必须在使用它之前初始化类<代码>对象不是为
mplayer
创建的

onCreate()
方法中初始化它

MediaPlayer mPlayer =new MediaPlayer(); 

嗯,每当你定义一个变量但不给它赋值时,它就会使应用程序崩溃。这里您正在创建一个
MediaPlayer
,但没有分配它。您应该在
onCreate()
方法中添加此代码:

MediaPlayer mMediaPlayer = new MediaPlayer();

这将创建一个新的
MediaPlayer
对象实例,您可以重用该类的函数。

打开logcat查看器。应用程序崩溃时应提供stacktrace。在mPlayer被实例化的地方也没有代码<代码>mPlayer对象?