iOS的升级测试 - 应用程序标识符授权不匹配

时间:2016-09-22 06:13:05

标签: xcode provisioning-profile xcode8 ios-provisioning xcode7.3

以前使用Xcode 7.3.1我能够直接在我的iPad上的应用程序商店应用程序上构建并测试升级方案,该方案完美无缺。本周我升级到Xcode 8,当我尝试完全相同的方法时,我不断收到此升级错误

“此应用程序的应用程序标识符权利与已安装的应用程序的权限不匹配。这些值必须匹配才能允许升级。”

enter image description here

我试过在这个帖子上发布了多个解决方案,但没有一个有效。我也没有手表应用程序。只是一个简单的iOS应用目标。

App installation failed due to application-identifier entitlement

我删除了我的证书和配置文件并重新创建了它们,但仍然存在同样的问题。然后我去下载Xcode 7.3.1并再次尝试使用完全相同的问题。

现在我陷入困境,无法完全测试我的升级方案。

请帮助!!

7 个答案:

答案 0 :(得分:8)

尝试升级应用程序时遇到了同样的问题。 在这里我发现了:

我检查了旧应用和新应用的应用标识符权限。您可以通过在路径“AppName.app/AppName”处运行codesign -d --entitlements :- path/to/AppName.app/AppName或打开文件“archived-expanded-entitlements.xcent”来执行此操作。

旧应用程序的应用程序标识符是“1234XXX5X6.com.mycompany.myapp”但在新应用程序中它是“1234XXX5X6.com.mycompany.myapp。 develop ”。

通常我会直接在 Info.plist 中设置“捆绑标识符”。

Info.plist Bundle Identifier property

但我不知道项目构建设置中还有“产品包标识符”属性。

Build Settings Product Bundle Identifier property

之前的版本的应用程序是使用Xcode 7.3.1构建的,它具有以下设置:

  • Info.plist:com.mycompany.myapp
  • 构建设置:com.mycompany.myapp。开发
  • application-identifier:1234XXX5X6.com.mycompany.myapp

版本是使用Xcode 8.2.1构建的,它具有以下设置:

  • Info.plist:com.mycompany.myapp
  • 构建设置:com.mycompany.myapp。开发
  • application-identifier:1234XXX5X6.com.mycompany.myapp。 develop

似乎新的Xcode具有不同的应用程序标识符源。 所以我刚刚纠正了“产品包标识符”,我的问题就解决了。

答案 1 :(得分:6)

从设备中删除现有应用程序并再次运行。

答案 2 :(得分:3)

要解决此问题,只需启用"自动管理签名"从项目设置的常规选项卡。

我还有直接从xcode 8在我的设备上运行应用程序的问题。删除和生成配置文件和证书对我没有用。但启用"自动管理签名"为我工作。

希望这有帮助!

检查我的这个问题: Xcode 8 shows error that provisioning profile doesn't include signing certificate

答案 3 :(得分:1)

如果您希望升级现有的App Store应用程序而不删除它,但您的应用程序标识符权限不匹配,则可以使用以下解决方案。将新构建的存档上传到App Store,然后使用TestFlight将其下载到您的设备。这不如构建到设备那么快,但它会在保留旧数据的同时用新构建覆盖旧应用程序。一旦在TestFlight上有新的构建版本,就可以(相对)更快地完成升级过程的周转测试:

  1. 从您的设备上删除您的应用(假设它是最近的版本)
  2. 下载您的应用商店版本并生成一些数据
  3. 下载您的TestFlight版本,但不要运行它
  4. 直接将最新版本构建到设备
  5. TestFlight构建会覆盖权利而不删除旧数据,因此Xcode会愉快地通过TestFlight构建安装新版本,但您仍在测试升级过程,就像您直接在App Store版本之上构建一样你的应用。

答案 4 :(得分:0)

我是从作为詹金斯人工制品生成的.ipa中得到的。对我来说问题是Jenkins正在使用不同的配置文件。

我手动将Jenkins设置为使用与我尝试安装的更新版本相同的配置文件,并开始工作。

答案 5 :(得分:0)

选择“应用程序目标”,然后单击“常规”(如果选中或勾选),复选框将自动管理签名。

取消选中此选项将自动管理签名,并选择适当的签名设置配置文件并#Build并再次运行。

请参见下图。

enter image description here

答案 6 :(得分:0)

已解决!简短答案-从iPhone中删除旧应用 我去了iPhone存储设备,并使用搜索栏找到了有问题的应用程序(因为它没有显示在应用程序列表中),并发现了一个旧版本被隐藏,将其删除,现在可以使用了。

相关问题