android - 从后台应用程序以编程方式将电话静音需要什么权限?

标签 android audio android-audiomanager

我有一个 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/

相关文章:

android - 前台的 Firebase 通知

Android 无效 key 和 Facebook Connect

安卓应用专用软键盘

ios - 通过在 iOS 中使用 AudioQueue 记录的 WebSocket 流式传输音频

android - 加载音频文件时显示进度条

android - Android API 级别 7 中是否有 requestAudioFocus 的等效函数?

java - 浅谈Android平台上的多线程

audio - 如何使音频自动播放

audio - 在录制时使用 getUserMedia 从麦克风获取音频?

android - 如何在单耳机侧播放声音文件