需求背景:
iOS Testflight公测包因渠道限制存在过期问题(最长90天)有效,过期后公测包无法打开使用,如果在公测包和App Store包上未做视觉区分,可能存在用户安装公测包过期不能打开使用或未能及时更新App Store正式包的情况。
配置方案:
一、条件
1、旧方式
Info.plist -> Information Property List -> CFBundleIcons -> CFBundleAlternateIcons -> IconName -> CFBundleIconFiles
Xcode 13之前多图标配置方式参考链接
2、实现多套App图标集成,最新配置方式需要依赖 Xcode 13。
步骤
一、创建备用icon
二、Build Settings设置包含所有icon
Include all app icon assets 设置为 YES
也可自动化配置 工程文件对应名称为
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS
三、使用其中一部分icon
Include all app icon assets 设置为 NO
然后
Alternate App Icon Sets 设置当前版本需要使用的icon(名称和创建icon的时候保持一致)
四、代码测试
五、beta包使用备用icon
方式一、打包之前工程配置选一下对应icon
方式二、打包机增加beta环境选项 自动修改xcodeproj文件配置
ASSETCATALOG_COMPILER_APPICON_NAME
打包以后 可以查看包内assets.car文件是否包含备用icon判断设置是否生效
assets.car文件路径:
Xcode -> Windows -> Organizer -> .xcarchive -> Products -> Applications -> .app -> Assets.car
打开方式:AssetCatalogTinkerer工具
下载链接:Download Latest Release
六、APP Store Connect 产品优化页
备用icon打包送审通过以后 APP Store Connect 产品优化页可以添加产品测试方案
(最多添加三种 流量会平均分配到不同方案 选择方案数量时 流量比例会自动更新为当前方案数量的倍数已满足平均分配 方案数量为1种时 分发流量最多50% 方案数量为2种时 分发数量最多为66% 方案数量为3种时 分发数量最多为75%)
测试多种icon的用户满意度