4

我正在开发一个 Windows Phone 8 项目,我们通过 HockeyApp 将其部署为公司应用程序。我有一个从我们的 Symantec 证书生成的 .PFX 文件,并且设备上安装了正确的 .aetx 文件。

如果我打算将 .XAP 文件部署并复制到单独的某个地方,并通过使用 XapDeploy.exe 工具对其进行部署来测试它,它将静默安装并正常工作。然后,我使用 XapSignTool 成功地对 .PFX 签署 .XAP(“XapSignTool 成功:成功签署 = C:\xxx”)。

当我尝试使用 XapDeploy 工具测试这个最近签名的 XAP 时,我会收到错误消息“错误 - 应用程序安装失败。发生运行时错误。修复 WMAppManifest.xml 文件中的功能。” 如果使用 HockeyApp 部署此文件,安装将在设备上静默失败,并且在下载后似乎只是坐在那里。

有谁知道代码签名后可能导致这种情况的原因是什么?

4

1 回答 1

3

我能够解决我的问题。首先,除非您已经在当前运行的模拟器版本上安装了 AET 文件,否则代码签名的 XAP 将不会在模拟器中运行。因此,我期望在 XAP 签署后不会看到失败是不正确的。

然后,我在部署到我的设备时遇到了一些其他问题。已通过确保发布者 ID GUID 与用于 Symantec 证书的发布者 ID 相同来解决此问题。

此外,与直接使用 XapSigningTool 不同,我最终使用了 PowerShell 脚本,该脚本在一个步骤中运行 MDILXAPCompile 并签署 XAP(使构建后的步骤易于编写)。ps 脚本 BuildMDILXap.ps1 位于 \Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\MDILXAPCompile\ 下,并且显然随 SDK 一起提供。

于 2014-06-30T18:27:23.903 回答