Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 当流式语音通话正在进行时,为什么其他应用程序会听到音频?_Android - Fatal编程技术网

Android 当流式语音通话正在进行时,为什么其他应用程序会听到音频?

Android 当流式语音通话正在进行时,为什么其他应用程序会听到音频?,android,Android,在我的应用程序中,当我启动音频呼叫/音频广播时,我已向音频管理器请求音频焦点 audioManager.requestAudioFocus(null,audioManager.STREAM_VOICE_CALL, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT| AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK); 如果用户按Home键并导航到另一个媒体应用程序,然后播放任何媒体,则该文件也会以低音量播放。接听电话的人

在我的应用程序中,当我启动音频呼叫/音频广播时,我已向音频管理器请求音频焦点

audioManager.requestAudioFocus(null,audioManager.STREAM_VOICE_CALL, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT| AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK);
如果用户按Home键并导航到另一个媒体应用程序,然后播放任何媒体,则该文件也会以低音量播放。接听电话的人还可以听到媒体声音文件


当我的音频通话正在进行时,如果用户试图播放任何音频资源,我如何告诉音频管理器只对我的应用程序进行优先选择?

您所描述的是Android上的默认行为(我相信)。也就是说,你应该能够做你希望的事情。Android SDK允许您将单个流类型设置为solo,从而使所有其他流静音。为此,您应该使用
AudioManager
setStreamSolo()
调用:

audioManager.setStreamSolo(audioManager.STREAM\u VOICE\u CALL,true)

您可能希望在播放开始时执行此操作,然后在播放结束或活动结束时将stream solo设置为false。让我知道这是否奏效

一些可能有用的资源:

  • 相关SO职位:
  • Android开发者文档:
  • 另一个SO职位:

    • 您所描述的是Android上的默认行为(我相信)。也就是说,你应该能够做你希望的事情。Android SDK允许您将单个流类型设置为solo,从而使所有其他流静音。为此,您应该使用
      AudioManager
      setStreamSolo()
      调用:

      audioManager.setStreamSolo(audioManager.STREAM\u VOICE\u CALL,true)

      您可能希望在播放开始时执行此操作,然后在播放结束或活动结束时将stream solo设置为false。让我知道这是否奏效

      一些可能有用的资源:

      • 相关SO职位:
      • Android开发者文档:
      • 另一个SO职位:

      为确保我正确理解,您想将所有服务中的音频静音(真实来电除外)?是这样吗?当你说“我的音频通话”时,我想我被你的措辞弄糊涂了。你的应用程序是否会进行语音通话?如果真的有电话打进来,你想暂停那个电话吗?为了确保我能正确理解,你想将所有服务的音频静音,除了一个真正的来电?是这样吗?当你说“我的音频通话”时,我想我被你的措辞弄糊涂了。你的应用程序是否会进行语音通话?如果真的有电话打进来,你想暂停那个电话吗?