iOS App应用程序图标的动态更换
前言
在iOS 10.3之前,App应用程序图标更新必须通过向 Apple 提交 ipa 包才能实现,但是在iOS 10.3之后,苹果官方提供了相关的API来实现这个功能,再配合公司后台接口,就能实现App应用程序图标的动态更换。
API,如下图:
具体步骤
一、配置App应用程序图标
(1)导入图片资源;
注:动态更换的应用程序图标是不能放在 Assets.xcassets 里,但是正常显示的应用程序图标还是可以放在 Assets.xcassets 里;
(2)配置info.plist;
在info.plist中,添加Icon files(iOS 5),这里的Icon files(iOS 5)是个字典,其中包含的key值有:
CFBundlePrimaryIcon -> Primary Icon
CFBundleAlternateIcons
UINewsstandIcon -> Newsstand Icon
CFBundlePrimaryIcon -> Primary Icon****:用于设置app的主icon,可以在这里的Icon files数组内添加,有多个的话,依次添加;当然这里也可以不用填写,直接在Assets.xcassets 里配置;
UINewsstandIcon -> Newsstand Icon:暂时用不到,不用管,也可以删除;
CFBundleAlternateIcons:key值CFBundleAlternateIcons需要自己手动添加的 ,类型为字典,在这个字典里配置所有需要动态修改的icon:键为icon的名称,值为一个字典(这个字典里包含两个键:CFBundleIconFiles,其值类型为Array,内容为icon的名称;UIPrerenderedIcon,其值类型为bool,内容为NO,也可以不加此key);
注:CFBundleIconFiles里面可以放多个尺寸的图片。
二、示例代码
三、运行结果
每次更换成功都有弹框提示,提示如下图:
小礼物走一走,来简书关注我