我们最近注册了iOS企业开发人员计划,以便能够使用内部分发,这大大简化了我们公司内部相当大的应用程序部署。在加入之前,我们已经彻底阅读了程序文档,我们知道新帐户与我们用于AppStore提交的标准帐户完全分开。
我现在不确定的是在开发人员门户网站中组织这两个帐户的最佳方法。我最关心的是bundle标识符,因为我将在Xcode中为每个应用程序处理两个不同的bundle id。我们所有的应用程序都使用iCloud和Push通知,因此不能选择通配符。
如何在Xcode中组织这个?您是否创建了两个不同的目标,或者您是否能够使用新的项目配置来管理它?那么iCloud权利呢?
修改
正如更新一样,我想明确表示我们正在寻找为内部发布和AppStore提交构建应用的最佳解决方案。
EDIT2
鉴于企业计划不允许您访问可以设置测试用户和产品ID的iTunesConnect,是否真的无法测试InApp购买?
答案 0 :(得分:34)
我并不完全清楚您需要什么,但听起来您希望能够构建您的应用商店应用以供企业内部使用。这是对的吗?
如果您希望能够使用两个不同的软件包ID构建应用程序,则可以创建自定义构建设置,并为不同的配置提供不同的值。
例如,您可以创建企业配置:
然后转到目标的构建设置并添加用户定义的构建设置:
给它命名为BUNDLE_ID
,如果展开三角形,可以为每个配置赋予不同的值:
接下来,打开Info.plist文件并输入${BUNDLE_ID}
作为包ID值:
使用“企业”配置进行编译时,您可以使用自定义方案(或通过命令行构建过程,如果您使用的那样)进行编译,将使用相应的包ID。
您还可以采用相同的方式配置代码签名/配置文件配置文件:
执行此操作后,将根据配置使用正确的推送通知/ iCloud权利。
我们很长一段时间以来一直在做这种事情。我们的构建服务器将使用这种技术为每个构建生成我们的应用程序的企业版和应用商店版本。
说到配置门户,您需要为推送通知,iCloud等单独配置两个应用ID。
这确实意味着推送通知必须单独发送到应用商店和企业版,因为它们不会共享相同的捆绑ID或推送通知证书。
默认情况下,iCloud存储将完全独立于两个版本。只要权利使用相同的团队ID设置,他们就可以访问同一个iCloud商店(如果您需要)。但如果您有两个独立的开发者帐户,这可能会出现问题。