如何防止Xcode覆盖iTunes二进制文件?

时间:2012-04-19 23:18:55

标签: objective-c ios

我有一个非常讨厌的问题。我的应用程序发布在AppStore中。

每次我从Xcode运行应用程序时,iTunes二进制文件都会被覆盖......下次我需要使用应用程序的生产版本进行测试时,我需要重新下载它。

有什么方法可以解决这个问题吗?

提前致谢!

2 个答案:

答案 0 :(得分:5)

您需要更改捆绑包标识符。以下是我在项目中设置的方法

  • 选择您的项目
  • 选择目标
  • 导航至Info标签
  • bundle identifier更改为自定义构建设置,例如我把它作为${BUNDLE_IDENTIFIER}

enter image description here

  • 现在点击Project - (您可能希望保持目标级别的选择)
  • 导航至Build Settings标签
  • 一直滚动到底部以查看User-Defined
  • 点击Add Build Setting
    • (1)选择Add User-Defined Setting
  • (2)添加Key作为您之前选择的名称
  • 为每个方案设置不同的包标识符

enter image description here


加成

您可以对图标使用相同的技巧,以便在一台设备上轻松区分构建

答案 1 :(得分:1)

如Paul.s所建议的那样,更改包标识符可以正常工作 - 但这意味着您的发布和调试版本将有所不同。从技术上讲,它们将是使用不同容器的不同应用程序。这样做有充分的理由,但它也有风险:它有点复杂,你通常需要更加努力工作以确保测试开发版本properly handles data from the production version。您需要确保发送给测试人员的任何临时版本都使用生产包标识符。

解决问题的另一种方法是简化旧版本的安装。如果您Archive生成了构建版本,那么您可以安装它们而无需通过App Store再次下载它们。只需打开以前导出的IPA并同步。