我正面临一个棘手的情况。我正在开发一个MVP应用,目前仅在一个国家/地区可用,我们的下一步是在另一个国家/地区发布它。事实是,另一个国家将拥有完全不同的数据集(大25-35MB)。否则,应用程序是相同的。因此,我需要在其他国家/地区发布它,但将其作为新应用发布(由于数据集庞大)。
我的计划是什么:我确实有2个构建方案(德国和英国),2个包含数据集的子模块(作为Pod)和Podfile,我在其中根据构建方案在这两个数据集之间切换。
当我创建发布分支时,我会触发为每个方案创建构建的CI。然后,我想将其上传到AppStore。一个应用程序仅在德国AppStore中可用,第二个仅在英国可用(因此,不会向同一应用程序发送垃圾邮件)。
我的想法是根据环境以编程方式更改Bundle ID,但我不知道该怎么做。如果您还有其他想法,我很乐意听到。谢谢
答案 0 :(得分:1)
您无法通过编程方式更改捆绑包ID。捆绑软件ID是您应用程序的 identity ,更改它没有任何意义。
拥有一个带有两个构建目标的项目非常容易,每个构建目标都针对具有不同包ID的完整应用程序。您不会基于构建方案来执行此操作,而是基于目标。
PS。 Apple不希望您提交许多不同版本的应用程序。这有点像垃圾邮件。一个应用程序可能包含例如50个可按需下载的数据集。