我是否还需要 Entitlements.plist 文件来进行临时构建?

发布于 2024-10-15 07:03:35 字数 979 浏览 10 评论 0原文

iOS 配置门户上的 Distribution 页面中给出的说明仍然清楚地描述了创建 Entitlements.plist 文件并将其包含在临时发行版的构建中的过程。 iOS 开发指南的分发应用程序页面<另一方面,/a> 没有提及 Entitlements.plist 文件。

当我尝试按照 iOS 开发指南中的说明“构建并存档”我们最新的应用程序时,由于权限问题,生成的临时 app.ipa 无法安装在我的开发设备上。当我使用 Entitlements.plist 文件重建时,新的 app.ipa 安装正常。

不幸的是,在 app.ipa 中包含 Entitlements.plist 意味着生成的构建不能简单地重新签名并提交到应用程序商店 - 对吗?相反,我必须在没有 Entitlements.plist 的情况下重建并将结果提交到应用程序商店。

我想我确实有一些相关的问题:

  1. 按照 iOS 开发指南中的指示生成的 app.ipa(没有 Entitlements.plist,只需使用临时分发配置文件进行签名)是否可以在非开发设备上安装?是否已在测试分发配置文件中正确识别?
  2. 有没有什么方法可以让我在我的开发机器上测试“构建和存档”的确切结果,以便我可以重新签名并将其从 Xcode 提交到 App Store?
  3. 如果我提交了明确包含 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:

  1. 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?
  2. 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?
  3. Will an app.ipa that explicitly includes an Entitlements.plist file be rejected if I did submit it?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

失与倦" 2024-10-22 07:03:35

从 Xcode 4.2 开始,在创建不需要任何特殊权限即可运行的应用程序时,您不再需要创建 Entitlements.plist 文件。 get-task-allow 权利会自动设置为 true 或 false,具体取决于您使用哪种类型的配置文件(Developer、Ad Hoc 或 App Store)签署应用程序。

参考:

As of Xcode 4.2 you no longer have to create an Entitlements.plist file when creating applications that do not require any special permissions to run. The get-task-allow entitlement is automatically set to true or false, depending on what kind of provisioning profile you sign your application with (Developer, Ad Hoc, or App Store).

ref:http://help.testflightapp.com/customer/portal/articles/535398-invalid-profile-distribution-build-entitlements-must-have-get-task-allow-set-to-false-

岁吢 2024-10-22 07:03:35

我刚刚尝试过,不需要简单的临时授权,只需使用临时配置文件来存档和共享,然后就可以了。

i just tried , no need entitlements for simply ad-hoc , simply using ad-hoc profile to archive and share , then fine .

假扮的天使 2024-10-22 07:03:35

来自 iOS 开发者库:

如果您正在进行 Ad Hoc 分发,则必须正确配置项目以包含 Entitlements.plist 文件并取消选中 get-task-allow 复选框(将其设置为 False)。
http://developer.apple.com/library/ios/# technotes/tn2242/_index.html

将 Entitlements.plist 文件保留在发行版本中没有问题,我已经提交了几个应用程序。
实际上,Entitlements.plist 还适用于您的应用程序可能使用的其他 iOS 功能:

权利。这些文件定义
为您提供的属性
应用程序访问 iOS 功能
(例如推送通知)和
安全数据(例如用户的
钥匙扣)。

http:// developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iphone_development/115-Configuring_Applications/configuring_applications.html

另请检查此答案:
可执行文件使用无效权利进行签名

From the iOS Developer library:

If you're doing an Ad Hoc distribution, you must properly configure your project to include an Entitlements.plist file and uncheck the get-task-allow checkbox (which sets it to False).
http://developer.apple.com/library/ios/#technotes/tn2242/_index.html

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:

Entitlements. These files define
properties that provide your
application access to iOS features
(such as push notifications) and
secure data (such as the user’s
keychain).

http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iphone_development/115-Configuring_Applications/configuring_applications.html

Also check this answer:
The executable was signed with invalid entitlements

寄与心 2024-10-22 07:03:35

如果您使用了现代化工具,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

女中豪杰 2024-10-22 07:03:35

我没有回答您所有的问题,但当我最近使用临时发行版进行一些测试时,我需要添加一个 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文