我有一个 Android 应用程序,当用户正在接听某人调用的电话时,该应用程序恰好在用户的 Android 手机后台运行。在某个时刻,我的应用程序希望将电话中的音频静音并播放自己的音频。此外,我希望在不干扰用户讲话的情况下执行此操作。
我的应用需要拥有什么权限才能执行此操作?第三方应用程序是否有任何权限足以让我的应用程序执行此操作?
看起来 AudioManager.setStreamMute(STREAM_VOICE_CALL, true)
会将语音通话的音频输出静音。但我不知道这需要什么权限:它没有在 Android API 文档中列出,也没有在 the Pscout permission map 中列出。 。另外,我无法判断在任何版本的 Android 上,从后台运行的应用程序使用此 API 是否有任何限制。
(如果问题陈述不清楚:Alice 已在她的手机上安装了我的应用程序。Bob 调用 Alice。Alice 接听电话并正在与 Bob 通话。在某个时刻,我的应用程序想要完全静音 Bob 的声音并播放自己的音频剪辑,这样爱丽丝就会听到音频剪辑,而不是鲍勃所说的任何内容。但是,我不想关闭爱丽丝手机上的麦克风:如果爱丽丝说了什么,仍然应该被拾取通话中,鲍勃仍应在通话中听到该消息。)
最佳答案
您可以尝试:android.permission.MODIFY_AUDIO_SETTINGS
。
关于android - 从后台应用程序以编程方式将电话静音需要什么权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21468064/