我正在为一个 Android 手机应用程序做一些准备研究,该应用程序将在用户同时接听电话时涉及语音搜索或语音识别。我发现,当我在通话过程中尝试调用语音搜索或类似的操作(从麦克风获取输入)时,我会收到“音频错误”消息。手机应用是否独占控制手机的麦克风输入,从而使其他应用无法访问音频输入?
最佳答案
在回答直接问题时,是的。手机应用程序完全控制麦克风输入。这与所有使用麦克风的应用程序相同。一次只有一个应用程序可以访问麦克风。但是,希望您的应用程序能够访问语音上行链路流,这是同一件事(它是对着麦克风说出并上传到服务塔的内容),而且它不会完全干扰通话。你可以这样做:
MediaRecorder mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_UPLINK);
您必须将记录权限添加到 list 等,但仅此而已。幸运的是,语音识别的东西都是内置的,所以你应该能够通过在这里四处看看或谷歌搜索来相当容易地找到如何做到这一点。不幸的是,我自己在那个领域没有什么可以提供给你的。 希望这对您有所帮助!
关于android - 在 Android 上共享音频输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4495122/