【Electron】Electron Icon 图标说明、及常见问题
其实各种打包模块都有相关的文档说明,相关链接如下:
electron-builder:https://www.electron.build/icons.html
electron-packager: https://electron.github.io/electron-packager/main/interfaces/electronpackager.options.html#icon
1、图片格式
-
windows 和 macos 的 图标都是复合格式,包含了多种尺寸和颜色模式,Linux 就是多张png,electron 例子里就多各种尺寸。PS:不要把png直接改成 ico。
-
windows :.ico 文件,下图为 iConvert Icons 的默认设置。
-
macos:.icns 文件,下图为 iConvert Icons 的默认设置。
2、工具
iConvert Icons、icoFx、AppIcon Generator、MakeAppIcon 等。
- iConvert Icons 是支持多平台的,但online 版本已经无法使用了,网上还有离线版本,app store 和 microsoft store 上应该还可以找到,但可能要收费。
- icoFx 它更像是一个编辑器,同时也支持 windows、mac的图标生成。
- AppIcon Generator 支持 macOS、iOS、watchOS 和 Android 的图标生成。
- MakeAppIcon 在线工具,支持移动图标的生成。
3、常见问题
- windows上图标未更换。图标已经换了,但新打出的包或是安装后的 exe 图标没有更换。这个时候可以右击你的exe或是安装包点属性,看看图标是否正常,如果这里的图标正常,那其实就是成功的了。主要原因是因为 windows 图标缓存机制导致的,其实就不用管了,但看着不爽的话,可以清除系统的图标缓存。PS:清除行为慎用。最后会提供清理的批处理文件。
- windows 窗口或任务栏图标未更换成功。这种情况一般是 ico 文件中,缺少小尺寸图标,如 缺少 16*16 或 32*32 的图标。
4、windows 清理缓存批处理文件
将下面的内容保存成 bat 文件,执行就可以。PS:有可能需要以管理员权限执行。
rem 关闭Windows外壳程序explorer
taskkill /f /im explorer.exe
rem 清理系统图标缓存数据库
attrib -h -s -r "%userprofile%\AppData\Local\IconCache.db"
del /f "%userprofile%\AppData\Local\IconCache.db"
attrib /s /d -h -s -r "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\*"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_32.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_96.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_102.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_256.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_1024.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_idx.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_sr.db"
rem 清理 系统托盘记忆的图标
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v IconStreams
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v PastIconsStream
rem 重启Windows外壳程序explorer
start explorer
本文原创手打,转载请注明出处。 Electron 交流 QQ:160162552