Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查权限:在声明通话记录时进行媒体记录_Java_Android_Audio Recording - Fatal编程技术网

Java 检查权限:在声明通话记录时进行媒体记录

Java 检查权限:在声明通话记录时进行媒体记录,java,android,audio-recording,Java,Android,Audio Recording,下面是开始通话录音时的logcat 08:43:07.656 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 23 06-14 08:43:07.657 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 2 06-14 08:43:07.658 4982-4982/com.callrecorder.an

下面是开始通话录音时的logcat

 08:43:07.656 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 23
06-14 08:43:07.657 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 2
06-14 08:43:07.658 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 22
06-14 08:43:07.658 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 11
06-14 08:43:07.670 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 12
06-14 08:43:07.673 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 14
06-14 08:43:07.684 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 16
06-14 08:43:07.685 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 8
06-14 08:43:09.692 4982-4982/com.callrecorder.android E/CheckPermission: media_record-code= 7
06-14 08:43:09.811 4982-4982/com.callrecorder.android W/ServiceManager: Permission failure: android.permission.RECORD_AUDIO from uid=10165 pid=4982
06-14 08:43:09.811 4982-4982/com.callrecorder.android E/CheckPermission: Permission Denial: can't record pid=4982, uid=10165
06-14 08:43:09.811 4982-498
尽管所有权限都在清单中,如下所示:

 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>

我正在测试安装了棒棒糖的oppo f1s


有人可以建议为什么仍然获得权限错误以及如何修复它吗。什么权限仍然没有被捕获?

最终得到了解决方案,这是移动设备中的权限问题,oppo为未启用的应用程序提供了额外的安全保护


转到安全>应用权限,然后选择应用并手动授予权限,即使在棒棒糖中也是如此。

永久和更好的解决方案:

从棉花糖你必须检查运行时权限。 从Android 6.0(API级别23)开始,用户在应用程序运行时授予应用程序权限,而不是在安装应用程序时。这种方法简化了应用程序安装过程,因为用户在安装或更新应用程序时不需要授予权限。它还为用户提供了对应用程序功能的更多控制;例如,用户可以选择让摄像头应用程序访问摄像头,但不访问设备位置。用户可以随时通过进入应用程序的设置屏幕撤销权限

详情见:

您可以通过此链接了解详细解决方案:

如果您想灵活地工作,我建议您使用github android库:

感谢您的输入,您的评论和信息是有效的,我也在使用相同的方法。问题仅限于棒棒糖和oppo f1s,此代码在其他设备上运行良好。