Android 录音,加权限还有错误:java.lang.RuntimeException: setAudioSource failed. onCallStateChanged获取不到来电号码
2017-07-03 16:11
567 查看
Android中给录音对象设置录音来源
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
如果遇到如下报错 :
ServiceManager: Permission failure: android.permission.RECORD_AUDIO
java.lang.RuntimeException: setAudioSource failed.
首先请考虑在 AndroidManifest.xml文件中添加下面的两项权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
添加权限后,如果还报同样的错误,请进入手机设置-应用,找到自己的应用,给应用授权。
调试过程中除了第一次安装会提示授权外,再次安装不提示,如果用户没有授予应用相应的录音
和sdcard写权限,程序依然会报错。
所以如果是应用必须的权限,如果用户不给授权就不能进入应用,在获得授权前应每次都提示用户。
onCallStateChanged(int state, String incomingNumber)监听通话状态获取不到来电号码的原因一个
是和上面所述相同,另一个应该将super写在前面。
@Override
public void onCallStateChanged(int state, String incomingNumber)
{
super.onCallStateChanged(state, incomingNumber);
//自己的代码
}
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
如果遇到如下报错 :
ServiceManager: Permission failure: android.permission.RECORD_AUDIO
java.lang.RuntimeException: setAudioSource failed.
首先请考虑在 AndroidManifest.xml文件中添加下面的两项权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
添加权限后,如果还报同样的错误,请进入手机设置-应用,找到自己的应用,给应用授权。
调试过程中除了第一次安装会提示授权外,再次安装不提示,如果用户没有授予应用相应的录音
和sdcard写权限,程序依然会报错。
所以如果是应用必须的权限,如果用户不给授权就不能进入应用,在获得授权前应每次都提示用户。
onCallStateChanged(int state, String incomingNumber)监听通话状态获取不到来电号码的原因一个
是和上面所述相同,另一个应该将super写在前面。
@Override
public void onCallStateChanged(int state, String incomingNumber)
{
super.onCallStateChanged(state, incomingNumber);
//自己的代码
}
相关文章推荐
- Android学习:java.lang.RuntimeException: setAudioSource failed异常处理
- java.lang.RuntimeException: setAudioSource failed.
- java.lang.RuntimeException: setAudioSource failed.
- java.lang.RuntimeException: setAudioSource failed.
- java.lang.RuntimeException: autoFocus failed,Call autoFocus when preview is inactive (state = 1)
- Android使用MediaRecorder录音导致java.lang.RuntimeException: start failed.
- 相机 android java.lang.RuntimeException: setParameters failed
- Android 开发之错误整理java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has android.permission.READ_PHONE_STATE.
- Android 序列化(Serializable)出现错误 java.lang.RuntimeException: Parcelable encountered IOException writing
- 我的Android进阶之旅------>Android中MediaRecorder.stop()报错 java.lang.RuntimeException: stop failed.
- java.lang.RuntimeException: Handler (android.os.Handler) sending message to a Handler on a dead thre
- android 接收广播意图错误:java.lang.RuntimeException: Error receiving broadcast Intent { act=android.bluetoot
- eclipse开发Android项目之Rejecting re-init on previously-failed class java.lang.Class错误
- 我的Android进阶之旅------>Android中MediaRecorder.stop()报错 java.lang.RuntimeException: stop failed.【转】
- android 录音异常setAudioSource failed
- Android MediaRecorder 录音setAudioSource failed
- 记录错误Error:java.lang.RuntimeException: Some file crunching failed, see logs for details
- 关于Uri的java.lang.SecurityException: Permission Denial错误、(Android权限Uri.parse的详细资料)
- 设置相机参数导致java.lang.RuntimeException: setParameters failed