0
我的Android 6.0 Marshmallow出现问题。当我尝试使用麦克风并录制用户输入时,出现以下错误。在Unity 6上记录基于Unity的音频权限
12-09 18:26:42.226 204-10957/? W/ServiceManager: Permission failure: android.permission.RECORD_AUDIO from uid=10274 pid=757
12-09 18:26:42.226 204-10957/? E/: Request requires android.permission.RECORD_AUDIO
12-09 18:26:42.226 204-10957/? E/AudioFlinger: openRecord() permission denied: recording not allowed
12-09 18:26:42.226 757-1251/com.facebook.singApp E/AudioRecord: AudioFlinger could not create record track, status: -1
12-09 18:26:42.228 204-1253/? I/AudioFlinger: AudioFlinger's thread 0xafa40000 ready to run
而应用程序崩溃,它只在Android 6.0 Marshmallow上发生,所有其他平台正常工作。 在Android清单我已将此代码的一部分:
<uses-permission android:name="android.permission.RECORD_AUDIO" android:maxSdkVersion="1" />
和团结,我添加以下代码:(我知道这对webplayers但我想,黑客什么的)
private IEnumerator mobilePremissions()
{
yield return Application.RequestUserAuthorization(UserAuthorization.Microphone | UserAuthorization.Microphone);
if (Application.HasUserAuthorization(UserAuthorization.WebCam | UserAuthorization.Microphone)) {
Debug.Log ("Great");
ViewerSwitchSence.Recording();
} else {
Debug.Log ("Crapping");
}
}
我不不知道为什么Unity不会在点击时向用户授予授权,这正是Android 6.0 Marshmallow的预期。
感谢您的帮助。
你能告诉我们完全的Unity版本吗?以及最小和目标SDK请。 – JohnTube
目前在版本5.3.1f1(cc9cbbcc37b4)上工作个人 Thu,17 Dec 2015 13:01:19 GMT 分支:5.3 /发布。 最小的SDK目标: –