热爱足球 发表于 昨天 12:16

数据显示:苹果ipa文件如何修改图标呢

前言
在iOS11系统之前,苹果app的icon加载方式,是以info.plist的相关配置为先的,也就是说,加载icon先去info.plist查找是否有icon配置项,有的话按配置项加载icon,没有再去Assets资源去加载icon。
而iOS11之后,苹果把两个先级调换了,所以按之前的方式直接把包解压,把不同尺寸的icon放入包根目录,再加入icon配置项的方式不一定生效。
注意:为了兼容所有版本,比较好两种方式都要做,除非确定Assets没配置icon。

一、info.plist配置方式
1、你需要一张1024*1024的icon,导入生成icon的网址,下载iOS的icon压缩包,解压得到各种尺寸的icon。
2、解压ipa包,得到Payload文件夹,打开Payload,里面是app目录,接着打开,找到并打开info.plist,配置icon的键值对。
3、按照info.plist配置的icon修改步骤1中解压得到的icon,尺寸要对应,然后将所以需要的icon复制到Payload文件夹。
4、重签。

从iOS 5.0开始,通过包含CFBundleIcons键来指定图标。 旧的应用程序可能先前通过包含CFBundleIconFiles键来指定其图标。 如果密钥仍然存在,则应该删除该密钥(不要忘记删除任何特定于设备的变体)。 所有的应用程序都应该迁移到CFBundleIcons键来指定它们的图标。

CFBundleIcons键的值是一个带有两个子键的字典:CFBundlePrimaryIcon UINewsstandIcon。 UINewsstandIcon键用于报摊应用程序,否则可以省略。 CFBundlePrimaryIcon键的值是一个字典,用于标识与该分发包关联的图标图像。 它可能包含两个子键:CFBundleIconFiles和UIPrerenderedIcon。 UIPrerenderedIcon键的值是一个布尔值,用于指定图像是否已经包含闪耀效果。 CFBundleIconFiles键的值是一个字符串数组,每个字符串标识一个包中的图像。

重要:指定每张图片的称时,比较好省略任何扩展。 省略扩展后,系统会使用标准分辨率图像文件自动检测图像的高分辨率(“@ 2x”或“@ 3x”)变体。 如果您包含扩展,则必须明确指定所有图像文件(包括高分辨率变体)。

如果您的应用程序支持iOS 4.3,则还必须包含CFBundleIconFiles项以指定应用程序的图标图像。 这个键的值是一个字符串数组,每个字符串标识一个包中的图像。 如果您为iPad特定的图标包含了图像,则可以将它们列在CFBundleIconFiles项下,或者将它们列在设备特定的CFBundleIconFiles?ipad项下。 仅限iPad的应用程序应在CFBundleIconFiles项下列出其图标图像。
示例2具有iOS 4.3部署目标的通用应用程序的示例配置。


二、car替换方式
ipa包解压Payload文件夹,打开Payload,里面是app目录,接着打开,会发现一个Assets.car文件,这是个什么鬼也就是苹果把之前的包以一种方式压缩了一下,这里需要一个工具去解压-->替换-->重新压缩,然后替换掉原包里面的car文件。
经过网络搜索,发现了一款工具ThemeEngine,可以现这个功能。

这样说来,ios签名的作用不止一点,相反,还有很大的发挥空间。23-3个人站----免费苹果应用IPA一键签名工具官网。https://www.23-3.com/
页: [1]
查看完整版本: 数据显示:苹果ipa文件如何修改图标呢