iOS 桌面图标替换

不知道从什么时候开始,国内的手机应用喜欢在桌面图标上拉个横幅打广告, 每到双十一 618 等等各种有的没的的节日的时候,桌面就变得不堪入目。 之前从安卓换到 iOS 的一大原因就是安卓上的各种形状风格的都有应用图标太丑太混乱...

在少数派上看到《iOS 14 支持「自定义」图标了,如何把桌面玩出花样?》 (opens new window)

之前 iOS 上替换图标的可以利用 Safari 书签或者利用捷径,但是都需要经过一次跳转才能打开应用。 iOS14 之后,苹果为网页书签增加了无须跳转即可启动的功能,因此可以实现直接打开不需要明显跳转。

可以用 Icon Themer (opens new window) 捷径在手机上生成。 但...太麻烦也太不靠谱了,捷径真的不适合复杂的操作。 真不知道那些几百个操作的捷径的作者是怎么做出来的,耗费的时间肯定比正常编程要多得多得多...

所以,用 nodejs 写了个小工具生成 profile 文件。

# profile generator

本来是打算用 react 做个网页工具练练手的,但做差不多之后总觉得不满意,要做到部署上线还有很多事要做,而且这工具似乎也没什么必要...于是这一耽搁就是小半年 😓 索性就把 nodejs 项目的源码发出来,有需要的自取吧。 -- 2021.01.17

https://github.com/keng42/profile-generator (opens new window)

  1. data 目录下创建 profile.json 文件,并把准备好的图标文件放入 data/icons 目录
{
  "name": "Clean icons", // 配置名称,随意填写

  "items": [
    {
      "label": "Alipay", // 显示在桌面图标的名称
      "bundle": "com.alipay.iphoneclient", // 目标应用的 bundleId
      "icon": "支付宝.png", // 显示在桌面的图标,请将文件放在 icons 文件夹内
      "url": "", // 打开自定义 url,默认为空即打开应用首页
      "fromAppStore": "" // 这个是目标应用 app store 地址,如果不知道 bundleId 可以填写这个来自动获取
    }
  ]
}
  1. 运行
npm install
npm start

如果配置文件没有错误,将会生成 profile 文件,并开启一个网站服务,使用手机访问并下载安装相应的 profile 即可。