我一直认为,对于iOS,使用开发人员配置文件签署构建允许应用程序通过XCode在授权设备(在开发配置文件中列出)上运行(并进行调试)构建,而使用分发配置文件进行签名允许应用程序在已经专门添加到分发配置文件的其他iOS设备上运行(但未调试),以便进行QA / beta测试/等(并通过iTunes同步或安装) OTA分发),无需那些QA / beta测试人员甚至不知道XCode是什么。
似乎与Apple的几个文档相匹配:
“当您准备好分享您的应用以进行用户测试[...]时,您需要 使用分发配置创建应用程序的存档 个人资料并将其发送给应用测试人员“(source)
和
使用开发配置文件进行代码签名可让您的应用继续运行 设备通过Xcode,并与分发配置文件签署允许 您可以创建分发版本。
名为“iPhone Developer”的证书允许您运行/调试您的 iOS设备上的应用程序通过Xcode,以及名为“iPhone的证书” 分发“允许使用Ad Hoc测试您的提交构建 分配(source)
这似乎意味着使用分发配置文件是在App Store外部进行应用程序共享所必需的,多年来我一直认为这是真的。然而,最近我向其他同事展示了一个用例,他们只使用开发配置文件就可以与许多其他人共享构建。另一位用户在此处描述了类似的发现:Why not use development provisioning instead of ad hoc?
我担心我可能会遗漏一些内容,我现在怀疑,只要有其他用户可以访问包含其设备的UUID的相关开发人员配置文件,并将其安装在他们的设备上,拖入iTunes,配置实用程序等),他们也可以通过iTunes同步开发人员构建,而无需进行单独的分发构建。
这使我质疑我对开发人员和分发版本之间差异性质的一些假设。我开始认为它更多的是关于调试支持和一般的安装简易性,而不是它的安装方式(XCode vs iTunes / OTA明确)。
简而言之,如果设备在开发人员配置文件中包含UUID,我是否真的需要来制作单独的分发版本,或者我可以简单地共享版本开发版本并假设它可以工作还有iTunes同步?组织者中的“用于开发”按钮是否与此有任何实际关联?
更广泛地说:在提交到App Store之前,开发人员和AdHoc构建在开发/测试阶段如何在组织内的其他人之间共享的基本区别是什么?
答案 0 :(得分:3)
检查此SO Post以了解开发人员和分发版本之间列出的差异。从开发人员的角度来看,如果您要通过使用开发人员配置文件或分发配置文件对应用程序进行签名来分发您的应用程序没有太大区别,前提是您没有测试推送通知。