如何配置我的iPhone项目以使用单独的应用程序图标进行测试版

Ste*_*ood 5 iphone xcode icons

我想要实现的是,我发送给我的beta测试人员的应用程序图标与将提交审批的应用程序的应用程序图标不同.这将允许我和我的beta测试人员轻松识别该应用程序是测试版.

我不确定是否应该添加构建脚本来修改info.plist并更改那里指定的应用程序图标.为此,我想我必须有条件地检查构建类型(DEBUG/RELEASE/DISTRIBUTION等)并将适当的值写入plist文件.

或者,我认为我可能需要为beta版本创建单独的目标,并在那里指定新的BETA应用程序图标.

如果有人之前已经做过这种程序,那么非常感谢任何有关如何做到这一点的提示和想法.

rav*_*nsp 12

过时:截至2017年9月,我的答案现在可能已经过时了.请使用与资产目录相关的最新Apple开发人员指南.资产目录是为您的应用指定图像/图标资源的新方法.

原始答案:

您提到的两种方式都可用于此目的(通过单独的Target或使用Build设置).在我看来,更合乎逻辑的方法是使用不同的构建配置并设置plist文件以从构建配置动态获取图标文件名.

我将如何做到这一点:

  1. 在项目构建设置中,创建一个名为ICON_FILE的新用户定义变量(用于"所有配置")
  2. 将变量的值设置为"Icon.png"(对于"所有配置")
  3. 创建一个名为"Beta"的新构建配置.
  4. 为"Beta"配置将ICON_FILE变量的值设置为"Icon-beta.png".

(这将使所有配置都具有值"Icon.png",除了Beta配置)

在Info.plist中将"Icon file"属性的值设置为${ICON_FILE}.这将使info.plist从您之前定义的变量动态获取文件名.

在您的应用程序资源中,除了您已经拥有的"Icon.png"之外,还应包含名称为"Icon-beta.png"的测试版图标.

如果您使用"Beta"配置构建应用,则应用会将测试版图标作为应用图标.

希望这可以帮助!


小智 7

可以在不创建其他目标的情况下使用资产目录.

以下是我使用的步骤:

1 - 在images.xcassets中创建两个(或更多)app图标集

appIcon1 appIcon2

2 - 从项目设置创建另一个配置

演示配置

3 - 转到目标 - >构建设置并搜索应用程序图标.您将在资产目录编译器 - 选项下看到资产目录应用程序图标集名称.更改将在新配置中使用的资产目录名称.

应用程序图标设置配置名称

4 - 针对不同配置构建.

模拟器屏幕截图