我正在开发一个Android音乐播放应用程序,可以播放设备本身的音频文件。
应用程序播放音频OK,但我总是在LOGCAT输出中收到此错误
MediaPlayer: java.lang.SecurityException: ConnectivityService: Neither user 10285 nor current process has android.permission.ACCESS_NETWORK_STATE.
我按如下方式配置了MediaPlayer: -
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mMediaPlayer.setOnPreparedListener(buildOnPreparedListener());
mMediaPlayer.setOnErrorListener(buildOnErrorListener());
我猜是因为我将AudioStreamType设置为STREAM_MUSIC,我还有其他选择吗?
我不想让我的用户在不需要这样做时允许互联网访问>
我不喜欢LOGCAT中出现的这些错误。
我是否有任何选项可以配置MediaPlayer播放“本地”音频文件而不会产生这些错误?
答案 0 :(得分:1)
您可以使用铃声和铃声管理器播放本地文件
RingTone ringtone = RingtoneManager.getRingtone(getApplicationContext(), SoundUri);
ringtone.play();
创建MediaPlayer是为了提供音频/视频文件和流的播放,因此他们需要对流的android.permission.ACCESS_NETWORK_STATE权限。