iOS15 切换上架App图标的最新方案

iOS15 切换上架App图标的最新方案

前言: Xcode13以及iOS15发布之前,Apple其实已经支持在应用内切换图标了,通过将不同的ICON图标打到包内,并手动配置,然后通过业务代码修改ICON。当时的应用场景主要是提供给用户主动切换不同的图标,更换成自己喜欢的图标风格。

iOS15之后,苹果支持将上线AppStore的包进行图标切换,目的是根据不同的图标判断用户转化。因此在Xcode13之后,多ICON的设置方法由之前的手动配置,改成了更加方便的配置方式。

新方案: 在assets内新增图标项目

备注: 此方案适用于Xcode13及其后续版本,低于这个版本无法这样配置。

  1. 向Assets.xcassets内添加一组新的ICON:

    iOS15 切换上架App图标的最新方案_第1张图片

    如上图所示添加一组新的ICON,并将ICON改一个名字(Test)

    1. 在项目设置里的允许使用多套ICON:

      选择项目->Build Setting->搜索Include all app icon assets,然后改为YES:

    2. **测试ICON **

      [[UIApplication sharedApplication] setAlternateIconName:@"Test" completionHandler:^(NSError * _Nullable error) {
          if (error != nil) {
              NSLog(@"set alternative icon error:%@", error.localizedDescription);
          }
      }];
      

      其中参数为新增的ICON组的名称(截图里的为Test)。如果弹出更换成功的提示,说明更换成功;反之则报错。

      而这个实现的原理其实就是直接读取.xcassets里的ICON组,并因为设置了Include all app icon assets为YES而自动添加配置到Info.plist内。

    3. 苹果后台切换ICON

    添加多套ICON后,只有过审后的包才能在苹果后台切换ICON。因为苹果也会审核备选ICON是否满足审核条例。过审后,我们可以再下面页面中的 产品优化页 中进行操作:

    iOS15 切换上架App图标的最新方案_第2张图片

具体的测试方案可以参考 : https://help.apple.com/app-store-connect/#/devb53f12312

参考

https://nemecek.be/blog/114/implementing-alternate-icons-in-ios

https://juejin.cn/post/7044748618078617613

你可能感兴趣的:([Xcode],xcode,objective-c,macos)