我开发了一个android-app(家庭噪音警报),它可以在许多设备上正常工作。但是现在我收到了使用以下设备的用户的错误报告:
ANDROID_VERSION=6.0.1
PHONE_MODEL=HTC One A9
善良的用户向我发送错误报告,但我不明白。如果他启动应用程序,他会收到此错误。
这是错误日志:
02-05 18:42:41.501 E/AudioRecord( 6200): AudioFlinger could not create record track, status: -1
02-05 18:42:41.505 E/AudioRecord-JNI( 6200): Error creating AudioRecord instance: initialization check failed with status -1.
02-05 18:42:41.505 E/android.media.AudioRecord( 6200): Error code -20 when initializing native AudioRecord object.
02-05 18:42:41.505 E/android.media.AudioRecord( 6200): startRecording() called on an uninitialized AudioRecord.
我相信如果麦克风被另一个应用程序阻止,会出现此错误,是否有某些机构有这种错误的经验?
答案 0 :(得分:5)
进入您的设置/应用/ YourApp /权限并启用麦克风
答案 1 :(得分:3)
在最近的Android版本中,似乎在更改清单中的权限后从Android Studio中删除apk实际上并未更改应用设置中的权限。这就是上述答案对我有用的原因。我在清单中构建了一个没有RECORD_AUDIO权限的应用程序,并在我的日志中看到了权限错误(以及OP中的错误)。我将权限添加到我的清单并重新启动设备上的应用程序,日志中的权限错误不再存在,但我仍然在OP中遇到错误。我去了我的系统,应用程序,应用程序管理器 - > MyApp - >权限,并看到Record Audio已列出但仍然关闭。手动转动它固定它。
我想(但尚未确认)如果我首先在我的清单中建立了正确的权限,那么这对我来说就是有效的。或者,从设备卸载我的应用程序,然后重新安装,也可能会修复,但我也没有尝试过。