【问题标题】:"A valid provisioning profile for this executable was not found" for Xamarin.Forms iOS RELEASE build to an iPhone Device“找不到此可执行文件的有效配置文件”,用于 Xamarin.Forms iOS RELEASE 构建到 iPhone 设备
【发布时间】:2020-10-24 14:37:24
【问题描述】:

所以我的证书最近过期了,我不得不创建新的。我从 Visual Studio 创建了一个 Apple Development 和一个 Apple Distribution 证书,它们都显示为有效和/或在 Apple Developer、Visual Studio 和 Xcode 中的钥匙串中。

我当然更新了应用程序的开发和分发配置文件以使用这些新证书,并确保将它们重新下载到我的工作站。

(Xamarin.Forms) 应用的 iOS 组件可以将 Debug 构建部署到模拟器和真实设备。它还可以在模拟器上部署Release 构建。归档发布的构建也很好。它已上传到 TestFlight 并由测试人员成功安装。

问题仅在于将Release 构建部署到我的测试设备。 Release 构建之前已成功部署到同一设备,所以我不清楚发生了什么。

捆绑签名身份和配置文件已按照建议设置为自动。为了确保捆绑包使用了正确的配置文件,我将它们设置为预期/正确的分发标识和配置文件,但部署仍然失败。

该应用曾经拥有iOS Distribution 证书,但似乎已被Apple Distribution as far as I can tell 取代。我看到iOS * 证书仍然可以在Apple Developer 上创建,但是在从 Xcode 或 Visual Studio for Mac 创建证书时,它们没有被列为选项。我确实尝试将配置文件指向 iOS Distribution 创建的 online 证书,但它仍然不起作用。

我还重新启动了 Visual Studio、Xcode、iPhone 设备和我的 Mac 工作站,但无济于事。

还有什么我可能会遗漏的吗?我是应用程序开发的新手,非常不清楚“无效的配置文件”还有什么含义。

任何其他帮助/提示/想法将不胜感激!

部署时的错误信息:

ApplicationVerificationFailed:无法验证 /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.FSRtzC/extracted/{XAMARIN_IOS_PROJECT_NAME}.app 的代码签名:0xe8008015(有效的配置文件因为找不到这个可执行文件。) 错误 MT1006:无法在设备“{IPHONE DEVICE NAME} iPhone”上安装应用程序“{PATH TO XAMARIN_IOS_PROJECT}/bin/iPhone/Release/{XAMARIN_IOS_PROJECT_NAME}.app”:AMDeviceSecureInstallApplicationBundle 返回:0xe8008015。

应用程序无法上传到设备。

配置文件信息:

状态:活动

类型:应用商店

启用的功能: 关联域、游戏中心、应用内购买、推送通知

软件版本:

Visual Studio 社区 2019 for Mac 版本 8.6.5(构建 23)

苹果开发者工具 Xcode 11.5 (16139) 构建 11E608c

Xamarin.Mac 版本:6.18.2.1(Visual Studio 社区)

Xamarin.iOS 版本:13.18.2.1(Visual Studio 社区)

运行 iOS 13.5.1 的 iPhone 7 Plus

【问题讨论】:

  • 您是否将您的设备添加到应用程序的配置文件中。参考this linkthis thread
  • 感谢您的建议和链接。问题在于分发配置文件,我认为它不需要像开发配置文件那样的设备。当配置文件类型为“App Store”时,我看不到将设备添加到配置文件的方法。有吗?带有设备列表的开发配置文件(配置文件类型“iOS 开发”)工作正常。
  • 我觉得和Development Profile一样。
  • 当我转到 Apple Developer 上的配置文件列表时,在 iOS 开发配置文件中有一个可编辑的设备列表,但在 App Store 分发配置文件中却不能。由于它是在 App Store 中公开分发的,我认为我们不能将所有用户的设备都列入白名单是有道理的,因为我们不知道哪些设备会从 App Store 下载它。
  • 此外,发布版本之前使用此分发配置文件,并且分发配置文件上从未有设备。

标签: ios macos visual-studio xamarin.forms app-store-connect


【解决方案1】:

我只需要使用Ad Hoc 类型的分发配置文件。该应用使用的分发配置文件类型为 App Store,因为它是为 Test Flight 创建构建档案所需要的。

我确实希望错误消息能够提供更多信息且不那么笼统。多种类型的问题似乎会导致相同的错误消息。

有用的参考资料:

  • This 提供了有关使用设备日志和调试权利的有用信息,这些信息帮助我开始有所作为。我的自定义权利和捆绑标识符的启用功能匹配,所以我不知道最初还可以尝试什么。设备日志没有给我任何信息,但取出权利文件是可行的,它从那里开始。
  • This 向我保证,我的一项自定义权利(在调试模式和发布模式APS Environment 之间不同)正在使用正确的“生产”值,即使它导致安装因(当时的 App Store)分发配置文件而失败。
  • This 提供了每种配置文件类型的详细说明。

【讨论】:

  • 我正在使用“iOS 应用程序开发”配置文件,但我仍然遇到问题..
  • 开发配置文件与分发配置文件不同。如前所述,我使用 Ad Hoc Distribution Profile 将 RELEASE 构建部署到设备。
  • 对我来说是权利文件,因为 APS 环境设置为调试
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-25
  • 2015-06-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多