【发布时间】:2019-04-29 00:30:38
【问题描述】:
我正在尝试在收到通知时通过我的应用中的媒体播放器播放直播 .ogg 音频。我的设备有奥利奥。问题是,当我收到通知时,在尝试播放音频时,我收到以下异常:
D/MediaPlayer: setDataSource IOException | SecurityException happend :
java.io.FileNotFoundException: No content provider: http://10.15.17.27:8000/40bccd94-9388-4e62-f2e4-08d65393ff81
at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1402)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1253)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1176)
at android.media.MediaPlayer.attemptDataSource(MediaPlayer.java:1163)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1135)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1080)
at android.media.MediaPlayer.create(MediaPlayer.java:972)
at android.media.MediaPlayer.create(MediaPlayer.java:949)
at android.media.MediaPlayer.create(MediaPlayer.java:928)
直播结束后,mediaplayer 开始播放完成的直播。请在下面找到我的代码:
try {
// MediaPlayer player = MediaPlayer.create(this, Uri.parse(remoteMessage.getData().get("body")));
MediaPlayer player = MediaPlayer.create(this, Uri.parse("http://10.15.17.27:8000/" + str_channel));
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setWakeMode(getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
} catch (Exception e) {
Log.e("mediaplayerexc", e.getMessage());
}
【问题讨论】:
-
您需要检查该文件的音频编解码器是什么。以下是android媒体播放器支持的编解码器Supported_codecs_mediaPlayer
标签: android android-mediaplayer android-8.0-oreo