我是否还需要 Entitlements.plist 文件来进行临时构建?
iOS 配置门户上的 Distribution 页面中给出的说明仍然清楚地描述了创建 Entitlements.plist 文件并将其包含在临时发行版的构建中的过程。 iOS 开发指南的分发应用程序页面<另一方面,/a> 没有提及 Entitlements.plist 文件。
当我尝试按照 iOS 开发指南中的说明“构建并存档”我们最新的应用程序时,由于权限问题,生成的临时 app.ipa 无法安装在我的开发设备上。当我使用 Entitlements.plist 文件重建时,新的 app.ipa 安装正常。
不幸的是,在 app.ipa 中包含 Entitlements.plist 意味着生成的构建不能简单地重新签名并提交到应用程序商店 - 对吗?相反,我必须在没有 Entitlements.plist 的情况下重建并将结果提交到应用程序商店。
我想我确实有一些相关的问题:
- 按照 iOS 开发指南中的指示生成的 app.ipa(没有 Entitlements.plist,只需使用临时分发配置文件进行签名)是否可以在非开发设备上安装?是否已在测试分发配置文件中正确识别?
- 有没有什么方法可以让我在我的开发机器上测试“构建和存档”的确切结果,以便我可以重新签名并将其从 Xcode 提交到 App Store?
- 如果我提交了明确包含 Entitlements.plist 文件的 app.ipa,该文件是否会被拒绝?
谢谢!
The instructions given in the Distribution page on the iOS Provisioning portal clearly still describe the process of creating, and including the Entitlements.plist file in a build for an ad-hoc distribution. The iOS Development Guide's Distributing Applications page, on the other hand, makes no mention of the Entitlements.plist file.
When I tried to "Build and Archive" our latest app following the instructions from the iOS Development Guide, the resulting ad-hoc app.ipa wouldn't install on my development device, due to a problem with the entitlements. When I rebuilt with the Entitlements.plist file, the new app.ipa installed fine.
Unfortunately, including the Entitlements.plist in the app.ipa means that the resulting build can't simply be re-signed and submitted to the app store - Right? Instead, I have to rebuild without the Entitlements.plist and submit the result to the app store.
I guess that I really have a few related questions:
- Would the app.ipa produced as directed in the iOS Development Guide (no Entitlements.plist, just sign with the ad-hoc distribution provisioning profile) install OK on a non-dev device that was properly identified in the test distribution provisioning profile?
- Is there any way for me to test the exact results of a "Build and Archive" on my dev machine, so that I can just re-sign it and submit it to the App Store from Xcode?
- Will an app.ipa that explicitly includes an Entitlements.plist file be rejected if I did submit it?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
参考:
ref:http://help.testflightapp.com/customer/portal/articles/535398-invalid-profile-distribution-build-entitlements-must-have-get-task-allow-set-to-false-
我刚刚尝试过,不需要简单的临时授权,只需使用临时配置文件来存档和共享,然后就可以了。
i just tried , no need entitlements for simply ad-hoc , simply using ad-hoc profile to archive and share , then fine .
来自 iOS 开发者库:
将 Entitlements.plist 文件保留在发行版本中没有问题,我已经提交了几个应用程序。
实际上,Entitlements.plist 还适用于您的应用程序可能使用的其他 iOS 功能:
另请检查此答案:
可执行文件使用无效权利进行签名
From the iOS Developer library:
There's no issue with leaving the Entitlements.plist file in the Distribution build, I've had several apps submitted with it.
Actually, Entitlements.plist is also for other iOS features that your app may use:
Also check this answer:
The executable was signed with invalid entitlements
如果您使用了现代化工具,Get-task-allow 现在在 Xcode 4.1 中称为“可以调试”
Get-task-allow is now called "Can be debugged" in Xcode 4.1 if you've used the modernization tool
我没有回答您所有的问题,但当我最近使用临时发行版进行一些测试时,我需要添加一个 Entitlements.plist。我认为文档仍然讨论 .plist 中的“get-task-allow”设置,但是当我完全按照说明进行操作时,我在签署应用程序时遇到了问题。相反,我使用 Xcode 的模板创建了一个 Entitlements.plist。它有两三个设置,没有一个是 get-task-allow。我将其保留为创建时的原样,并且构建成功了。
我过去的经验是,提交到应用程序商店且包含 Entitlements.plist 的应用程序未能通过验证步骤。
I don't have answers to all your questions, but I needed to add an Entitlements.plist when I recently used ad hoc distribution for some testing. I think the documentation still talks about the 'get-task-allow' setting in the .plist, but when I followed the instructions exactly I had problems signing the app. Instead, I created an Entitlements.plist using Xcode's template. It has two or three settings, none of which are get-task-allow. I left it exactly as it was when created, and the build succeeded.
My experience in the past has been that apps submitted to the app store with an Entitlements.plist included failed the verification step.