iOS 应用的 AppStore 版本及其多个 Testflight 构建在同一设备上

Posted

技术标签:

【中文标题】iOS 应用的 AppStore 版本及其多个 Testflight 构建在同一设备上【英文标题】:AppStore release of iOS app and its multiple Testflight builds on the same device 【发布时间】:2014-01-14 05:20:45 【问题描述】:

我想知道是否有一种做法是对 ios 应用程序的开发 Testflight 构建的配置进行一些调整,以使所有构建(包括从 AppStore 获得的当前主要应用的构建)都可以在同一设备上运行。

例如,我应该对哪些配置参数进行操作:MyApp(AppStore 构建)、MyApp_TF_234、MyApp_TF_237、...在我的设备上实时构建而没有任何冲突:

无需删除我的应用的 AppStore 版本即可查看任何 TF 构建(这就是为什么使用不同的名称 TF_ 约定) MyApp 仍应被 TF 视为同一个应用程序。

This presentation 描述的内容与我在此处询问的内容非常相似,不同之处在于我希望通过最少的步骤来实现这种“在同一设备上进行多个构建”以使其与 TF 一起使用。

【问题讨论】:

【参考方案1】:

这是可能的,但您必须为每个正在运行的应用程序创建不同的捆绑 ID!

【讨论】:

是的,在您回答之前,我自己尝试过:我已将捆绑 ID 更改为:com.mycompany.myapp.234 和 CFBundleDisplayName 为:MyApp (234) 并且它有效。我能看到的唯一问题是应用程序的 TF 列表最终会被众多编号构建的名称所淹没(一个构建 == 一个应用程序)。 是的,这是个问题,如果我需要测试多个版本,我只需增加具有相同捆绑 ID 的应用程序的内部版本号,然后我会制作 100 个应用程序,易于识别和管理 另外,现在我看到一个简化的设置可以只包含两个包标识符:com.company.myapp 和 com.company.myapp.testflight,其中前者用于 AppStore,后者用于适用于所有 testflight 构建。【参考方案2】:

除了我认为正确的答案之外,还有一些细节。

一个简化的设置可以只包含两个不同的包标识符:com.company.myapp 和 com.company.MyApp.Testflight,其中前者用于 AppStore,后者用于所有 testflight 构建。现在我设备的主屏幕有两个不同的应用程序:我的应用程序和我的应用程序 (236)。

另外,请注意,Testflight 会为每个创建的 App 生成新的 API 令牌,因此当您将应用切换为为 Testflight 构建或切换为为 AppStore 构建时,请不要忘记设置正确的应用令牌。

非常有用的博文:iOS multi-environment configuration、iOS Quick Tip: Managing Configurations With Ease。

【讨论】:

以上是关于iOS 应用的 AppStore 版本及其多个 Testflight 构建在同一设备上的主要内容,如果未能解决你的问题,请参考以下文章

iOS Appstore 应用覆盖企业应用

Apple 在 AppStore 中接受的最低 iOS 目标版本?

iOS:AppStore 输入错误版本,如何解决? [复制]

iOS App 版本控制:AppStore 修补程序版本可以低于 Beta 版本吗?

如何在应用商店提交更新版本的 ios 应用程序? [关闭]

iOS应用内集成AppStore评分功能