从外部存储器播放首次使用MediaRecorder录制的3gp文件时,AndroidMedia Player中出现错误(1,-2147483648)

从外部存储器播放首次使用MediaRecorder录制的3gp文件时,AndroidMedia Player中出现错误(1,-2147483648),android,android-studio,android-mediaplayer,android-mediarecorder,Android,Android Studio,Android Mediaplayer,Android Mediarecorder,获取E/MediaPlayer:尝试播放androidMediaPlayer时出错(1,-2147483648)。已授予权限,文件格式为3gp。我一直在尝试在我的代码中应用这个主题的答案,但没有解决这个问题 player = new MediaPlayer(); File file = new File(filePath); file.setReadable(true,false); FileInputStream i

获取E/MediaPlayer:尝试播放android
MediaPlayer
时出错(1,-2147483648)。已授予权限,文件格式为3gp。我一直在尝试在我的代码中应用这个主题的答案,但没有解决这个问题

   player = new MediaPlayer();
            File file = new File(filePath);
            file.setReadable(true,false);
            FileInputStream inputStream = new FileInputStream(file);
            player.setDataSource(inputStream.getFD());

            inputStream.close();

            player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mp) {
                        mp.start();
                        flag=true;
                }


            });
            player.prepareAsync();

按如下所示更改线路的顺序

player = new MediaPlayer();
File file = new File(filePath);
file.setReadable(true,false);
FileInputStream inputStream = new FileInputStream(file);
player.setDataSource(inputStream.getFD());

inputStream.close();
player.prepareAsync();

player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
    @Override
    public void onPrepared(MediaPlayer mp) {
            mp.start();
            flag=true;
    }


});

您要运行哪个android版本的应用程序?我在api 22、19、27中试用过