在通用应用程序中使用AudioRoutingManager.GetDefault()。AudioEndpointChanged需要什么功能?

时间:2014-09-30 23:30:05

标签: windows-phone-8.1 win-universal-app windows-phone-voip

在Windows Phone 8应用程序中,您需要使用ID_CAP_VOIP

AudioRoutingManager.GetDefault().AudioEndpointChanged

通用应用程序中的等价物是什么? Package.appxmanifest上的Capabilities选项卡中似乎没有列出任何VOIP / Audio功能

(我开始认为这在8.1通用应用程序中是不可能的)

1 个答案:

答案 0 :(得分:1)

老问题,但现在我知道了答案。

您需要做的两件事: 1.将相关音频标记为"通信"

如何执行此操作取决于您使用的API。它可以很简单。或者您可能必须使用AudioClientProperties.eCategory = AudioCategory_Communications的AudioClientProperties结构调用IAudioClient2 :: SetClientProperties。

  1. 将您的应用标记为" IP语音" app或者#34;语音邮件"应用 您应该使用以下内容将名为WindowsPhoneReservedAppInfo.xml的文件添加到项目中:

    <?xml version="1.0" encoding="utf-8"?>
    <WindowsPhoneReservedAppInfo         xmlns="http://schemas.microsoft.com/phone/2013/windowsphonereservedappinfo">
      <SoftwareCapabilities>
        <SoftwareCapability Id="ID_CAP_VOIP" />
      </SoftwareCapabilities>
    </WindowsPhoneReservedAppInfo>
    
  2. 在这里寻找更详细的解释:

    Playing audio to the earpiece from a Windows Phone 8.1 universal app