0

我在Visual Studio 2015中设置了“Apache Cordova的工具” - 项目。我有几个覆盖Windows平台的内容。为此,我在文件夹res/native/windows中放置了一些appxmanifest文件。在构建应用程序时,将这些文件复制到输出目录并使用而不是默认文件。如何在Visual Studio 2015中覆盖Cordova App的.projitems文件

然后我尝试同样具有下列文件:

  • CordovaApp.projitems
  • CordovaAppDebug.projitems
  • CordovaAppRelease.projitems

CordovaApp.projitems被复制和正确使用,就像appxmanifest文件一样。但似乎CordovaAppDebug或CordovaAppRelease(取决于内部版本)未被复制和使用。相反,它使用一些默认文件。

我实际上想用另一个证书签署我的应用程序。证书在CordovaAppDebug.projitems和-Release.projitems文件中指定。但由于这些文件从未被使用过,所以VS使用默认证书构建应用程序。

我已经找到解决方法,但它有点混乱: 我可以将证书设置添加到CordovaApp.projitems文件。似乎在该文件中设置的设置将覆盖调试或发布中指定的设置。烦人的部分是,它仍然创建并复制默认的CordovaApp.pfx - 即使它没有被使用。

一些问题:

  • 为什么文件CordovaAppDebug.projitems和CordovaAppRelease.projitems不会复制和构建使用?
  • 我该如何解决该问题,以便我可以使用基于调试和发布的不同配置?

回答

0

这些文件由Cordova自己管理,不能直接修改。但是,它们的生成方式是通过Cordova最新版本中的新功能。

你想为你描述的情况下做的实际上是把一个build.json文件在你的项目的根目录具有以下内容:

{ 
    "windows": { 
    "debug": { 
     "packageCertificateKeyFile": "Certificate-Debug.pfx" 
    }, 
    "release": { 
     "packageCertificateKeyFile": "Certificate-Release.pfx" 
    } 
    } 
} 

你也可以指定“的publisherId”随着证书文件的“packageThumbprint”。

支持此文件已安装Android一段时间,科尔多瓦5.3.3实际上增加了支持iOS。

+0

我最终使用了像你所描述的packageThumbprint和publisherId。奇迹般有效! – Jeremy

+0

我正在使用build.json来指定publisherid,但由于appmanifest文件没有它,因此没有考虑它。但是,当我通过命令行提供它的作品。任何想法什么命令被用来构建包括build.json版本 – user2934433

相关问题