Cordova没有为appxmanifest文件添加功能

时间:2016-04-06 14:48:20

标签: cordova windows-10-universal taco

我正在使用Visual Studio 2015(Update 2)使用Apache Cordova构建应用程序。此应用使用cordova-plugin-media插件录制音频。但是,当我尝试录制音频时,我收到此错误:Access is denied

查看package.windows10.appxmanifest中生成的\platforms\windows文件,我在那里看不到microphone功能。只有一种能力:

<Capability Name="internetClient" />

因此缺少麦克风功能。但是,这是我在windows.json中找到的:

"config_munge": {
    "files": {
        "package.appxmanifest": {
            "parents": {
                "/Package/Capabilities": [
                    {
                        "xml": "<DeviceCapability Name=\"microphone\" />",
                        "count": 1
                    }
                ]
            }
        }
    }
}

我该怎么做才能确保将此功能正确添加到生成的清单中?请注意package.appxmanifest中的不同名称windows.json,其中生成的清单实际上是package.windows10.appxmanifest

这是Cordova 6.1.1和Cordova @ Windows 4.3.1。

2 个答案:

答案 0 :(得分:1)

有两种方法可以添加功能:

  1. <DeviceCapability Name="microphone" />文件的Capabilities标记中添加package.windows10.appxmanifest,如下所示:

    <Capabilities>
      <Capability Name="internetClient" />
      <DeviceCapability Name="microphone" />
    </Capabilities>
    
  2. 导航到项目的根文件夹。打开命令行窗口并输入cordova platform update windows命令以更新Windows平台。 <DeviceCapability Name="microphone" />将添加到mannifest文件中。

答案 1 :(得分:0)

cordova-windows@4.3.1中的a bug影响了我,这阻止了清单文件中的功能被更新。

问题已于4月5日发布的cordova-windows@4.3.2解决。