Android “Cannot create AudioRecord”问题
Cannot create AudioRecord 问题研究
最近在研究Google Assistant API,遇到Cannot create AudioRecord问题。
工具: Android Studio 3.1.4
版本: Android 6.0以上
错误信息如下:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.androidthings.assistant/com.example.androidthings.assistant.AssistantActivity}: java.lang.UnsupportedOperationException: Cannot create AudioRecord
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Caused by: java.lang.UnsupportedOperationException: Cannot create AudioRecord
at android.media.AudioRecord$Builder.build(AudioRecord.java:626)
at com.example.androidthings.assistant.EmbeddedAssistant$Builder.build(EmbeddedAssistant.java:706)
at com.example.androidthings.assistant.AssistantActivity.onCreate(AssistantActivity.java:313)
1.AndroidManifest.xml
添加权限申请:<uses-permission android:name="android.permission.RECORD_AUDIO" />
2.动态申请权限
在onCreate里面添加:
requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO}, 0);
3.手动打开权限
在6.0以上的手机首次安装apk,需要手动设置权限,因此找到“设置” -> “应用管理” 打开对应的权限设置。