cordova - 如何签署 Windows 10 (UWP) 应用程序?

标签 cordova certificate win-universal-app windows-10-universal windows-10-mobile

该过程应该是相同的,就像 Windows 8.1(通用)应用程序一样。 ( Link )

我使用了这个命令:

powershell.exe -ExecutionPolicy Unrestricted -File "c:\program files (x86)\Microsoft SDKs\WindowsPhoneApp\v8.1\Tools\MDILXAPCompile\BuildMDILAPPX.ps1" -appxfilename "C:\SignApps\App.appx" -pfxfilename "c:\SignApps\Certificate.pfx" -password ***** -inputFolder "C:\SignApps\input" -outputfolder "C:\SignApps\output"

签名过程抛出此错误:
MakeAppx : error: You must include a valid app package manifest file named AppxManifest.xml in the source.
MakeAppx : error: Package creation failed.
MakeAppx : error: 0x80080203 - The specified package format is not valid: The file is not a valid app package because it is missing a required footprint file.

这些应用程序是通过cordova 构建的。当我使用 Windows 8.1 通用应用程序时,签名有效。使用 Windows 10,它失败了。该应用程序将通过 mdm(已添加 AET)提供。

我如何正确签名?

环境

操作系统:Windows 8.1 企业版

安装的 IDE:Visual Studio Community 2013 & 2015

使用的 IDE:Visual Studio Community 2015

VS 项目详情:Apache Cordova、WinJS、angularjs

证书:赛门铁克的公司证书,从外部公司收到

最佳答案

试试这个命令:
signtool sign/fd /a/f c:\SignApps\Certificate.pfx/p <您的 pfx 密码> App.appx

因此,您的原始应用程序将被签名。

注:签名工具 通过安装 Windows SDK 10 安装并在环境变量中添加“C:\Program Files (x86)\Windows Kits\10\bin\x64”这个路径。
您将通过以下方法获得您的应用程序 HashAlgorithm:

  • 将您的应用程序重命名为 .zip,然后提取此文件 AppxBlockMap.xml
  • 现在搜索以下内容:HashMethod=
    "http://www.w3.org/2001/04/xmlenc#
  • 在 xmlenc# 之后会有你的
    哈希算法例如在我的情况下:
    HashMethod="http://www.w3.org/2001/04/xmlenc#sha256"是 sha256
  • 关于cordova - 如何签署 Windows 10 (UWP) 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36566672/

    相关文章:

    unit-testing - 如何在Visual Studio中对Windows 10应用进行单元测试?

    listview - 如何在 UWP 中清除虚拟化 ListView 上的选择?

    java - 如何防止在java xml签名和证书中添加空格?

    c# - X509Chain 在 RemoteCertificateValidationCallback 期间未构建完整链

    java - 用于SSL身份验证的自签名证书和客户端 keystore

    ios - Phonegap Build - DisallowOverscroll 不适用于 IOS

    c# - Resharper 不适用于通用应用程序项目

    cordova - 应用程序崩溃后如何以编程方式重新加载 Cordova 插件?

    android - Cordova FileTransfer 下载错误

    ios - 从 WebView 的文本字段中禁用复制和粘贴菜单。我的应用程序基于 IOS Phonegap。