为 App Store 和企业分发构建应用程序
Posted
技术标签:
【中文标题】为 App Store 和企业分发构建应用程序【英文标题】:Building app for App Store and Enterprise Distribution 【发布时间】:2013-03-24 23:48:59 【问题描述】:我有一个应用程序,它会在内部分发给 100 名员工,但也会在外部分发到 App Store。
我已经注册了普通的 ios 开发者会员以及企业开发者计划。
但是,我试图弄清楚如何让 xcode 在构建调试构建、内部构建和应用商店构建之间切换。
具体来说,配置文件适用于特定的 App ID。我必须在开发者门户中创建两个不同的应用程序 ID,但我的应用程序只有一个应用程序 ID(显然)。
Any ideas how to have one project that could selectively build different configs...?
【问题讨论】:
【参考方案1】:您必须使用不同的targets。这为您提供了不同的配置,您还可以设置不同的应用程序 ids/bundle 标识符。
【讨论】:
你能让不同的目标使用相同的代码库吗?我创建的每一个新目标都为我创建了一个新的源文件夹。 你绝对可以。最简单的事情可能是复制您现有的目标,然后对其进行调整(例如,将其指向不同的 Info.plist 文件等)。 我必须为 In House 构建和 App Store 构建创建不同的 App Id 吗? AFAIK,是的。而且您还需要让它们归不同的开发者计划订阅所有。 (企业会员不能提交App Store应用:developer.apple.com/programs/start/ios) 我知道这是一个老问题,但它今天回答了我的问题..这应该是可以接受的答案!【参考方案2】:我同意@mrueg 的回答,但是,如果出于某种原因,您需要保持相同的 App-Id,您可以发布一个使用正常分发证书签名的应用程序商店,然后返回Xcode,创建一个新的存档,但使用企业分发证书签名。
您可能还想考虑B2B Program,我认为您不需要处理多个证书。
【讨论】:
究竟如何?企业计划成员不能进行 App Store 分发(反之亦然),并且两个开发者计划不能同时拥有相同的捆绑标识符。这两个分发证书从哪里来?【参考方案3】:只需存档项目,打开 Xcode 管理器,选择存档,然后选择分发存档,选择您想要的选项。 ad-hoc、企业、应用商店,这些选项都在那里。记得正确编码辞职。
【讨论】:
【参考方案4】:您只需要一个 App ID。
对于内部分发,您需要在苹果开发者中设置所有设备。 http://developer.apple.com/library/ios/#recipes/ProvisioningPortal_Recipes/CreatingaDistributionProvisioningProfile/CreatingaDistributionProvisioningProfile.html
对于外部分发,您只需通过applestore下载应用程序即可。
【讨论】:
关于 #2,即用于Ad-Hoc
分发,用于 beta 测试。对于最终产品的企业分发,没有限制(或至少远高于 100)。以上是关于为 App Store 和企业分发构建应用程序的主要内容,如果未能解决你的问题,请参考以下文章
为啥分发配置文件过期后,iOS App Store 应用程序仍会启动?
Mac App Store 之外的分发:请删除前缀“开发者 ID 应用程序:”