java.lang.NullPointerException:尝试调用虚拟方法'void 空对象引用上的android.media.MediaPlayer.start()'
- 我已经使用其他Android版本进行了测试,使用媒体播放器时也没有问题。
MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main_play);
play=findViewById(R.id.play);
play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mediaPlayer = MediaPlayer.create(MainPlay.this, R.raw.click);
mediaPlayer.start();
});
答案 0 :(得分:0)
在启动媒体播放器之前,请检查一次是否等于null(!= nu)
像波纹管一样
play=findViewById(R.id.play);
mediaPlayer = MediaPlayer.create(MainPlay.this, R.raw.click);
play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mediaPlayer!=null)
mediaPlayer.start();
});
或者我建议在点击之外初始化媒体播放器,因为您尝试立即访问媒体播放器可能是获取null的原因