首页 > 解决方案 > 空对象引用上的 setDataSource

问题描述

Logcat 告诉我 uri 为空,但我敬酒但它不是空的。我该如何解决这个问题?

日志猫:

Attempt to invoke virtual method 'void android.media.MediaPlayer.setDataSource(android.content.Context, android.net.Uri)' on a null

代码:

public void playSong() {
        uri = Uri.parse(PlayingScreen_List.get(position).getPath());
        try {
            mediaPlayer.setDataSource(this,uri);// **----->> Error is happening here**
            mediaPlayer.prepare();
            Toast.makeText(this, String.valueOf(uri), Toast.LENGTH_SHORT).show();
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (mediaPlayer != null) {
            mediaPlayer.stop();
            mediaPlayer.release();
            mediaPlayer = MediaPlayer.create(getApplicationContext(), uri);
        }else{
            mediaPlayer = MediaPlayer.create(getApplicationContext(), uri);
        }
        mediaPlayer.start();
    }

标签: javaandroid-studio

解决方案


推荐阅读