如何检测Android中是否存在麦克风?

如何检测Android中是否存在麦克风?,第1张

概述我的应用程序中有一个语音识别部分来捕获用户的语音输入. 这就是我的工作 Intent voiceIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);startActivityForResult(voiceIntent, REQUEST_CODE); 这在大多数设备上工作正常,但现在由于平板电脑越来越流行,其中一些没有麦克风, 我的应用程序中有一个语音识别部分来捕获用户的语音输入.

这就是我的工作

Intent voiceIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);startActivityForResult(voiceIntent,REQUEST_CODE);

这在大多数设备上工作正常,但现在由于平板电脑越来越流行,其中一些没有麦克风,它会引发错误

W/dalvikvm( 408): threadID=1: thread
exiting with uncaught exception
(group=0x40015560) E/AndroIDRuntime(
408): FATAL EXCEPTION: main
E/AndroIDRuntime( 408):
androID.content.ActivityNotFoundException:
No Activity found to handle Intent {
act=androID.speech.action.RECOGNIZE_SPEECH
(has extras) } E/AndroIDRuntime(
408): at
androID.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1408)
…..

所以我想在让用户访问语音输入功能之前检测麦克风是否存在.如何检测设备上是否有麦克风.

谢谢.

解决方法
PackageManager pm = getPackageManager();boolean micPresent = pm.hasSystemFeature(PackageManager.FEATURE_MICROPHONE);

AndroID API参考:hasSystemFeature

总结

以上是内存溢出为你收集整理的如何检测Android中是否存在麦克风?全部内容,希望文章能够帮你解决如何检测Android中是否存在麦克风?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1139207.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存