一行命令,更新flutter工程下所有图标
2019-11-24 本文已影响0人
曹建峰
1. 万事俱备,只欠图标
李蕾经过一个月的奋战,终于完成了一个flutter应用的开发。
打算上线了才发现,图标还是flutter自带的图标呢,赶紧向设计师韩梅梅求救。
设计师韩梅梅拿出准备已久的Logo丢给李蕾,李蕾傻眼了。
李蕾:“怎么只有一个?”
韩梅梅:“难道安卓和iOS要用不同的图标?”
李蕾:“不是啊。同样的图标不同的尺寸。
安卓图标五六个 ,iOS图标十几个吧。
我给你列个列表吧,尺寸都告诉你。你帮忙resize一下吧。”
韩梅梅:”宝宝心里苦...“
李蕾:“嗯,我想想办法吧...”
于是李蕾回到工位上默默的开始写脚本...
2. 苦尽甘来,势如破竹
经过一天的努力,李蕾开始进行他第1024次实验。
当时他敲出了下面一行命令:
flutter_logo_updater logo_file_path project_file_path
随后脚本开始运行,屏幕上滚动出如下的输出:
$ flutter_logo_updater msks/images/logo_lxb.png msks
==================================================
PROJECT LOGO Updating...
In /Users/lilei/Documents/w/msks
With /Users/lilei/Documents/w/msks/images/logo_lxb.png
--------------------------------------------------
[01/20]->(48*48) /Users/lilei/Documents/w/msks/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
[02/20]->(72*72) /Users/lilei/Documents/w/msks/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
[03/20]->(96*96) /Users/lilei/Documents/w/msks/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
[04/20]->(144*144) /Users/lilei/Documents/w/msks/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
[05/20]->(192*192) /Users/lilei/Documents/w/msks/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
[06/20]->(20*20) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
[07/20]->(29*29) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
[08/20]->(40*40) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
[09/20]->(40*40) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
[10/20]->(58*58) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
[11/20]->(60*60) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
[12/20]->(76*76) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
[13/20]->(80*80) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
[14/20]->(87*87) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
[15/20]->(120*120) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
[16/20]->(120*120) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
[17/20]->(152*152) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
[18/20]->(167*167) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
[19/20]->(180*180) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
[20/20]->(1024*1024) /Users/lilei/Documents/w/msks/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
==================================================
抑制不住内心的激动,李蕾火速打开VSCode,查看结果
更新成功后的画面李蕾:“成功了! I did it !”
3. 水到渠成,天下为公
为了拯救更多的“韩梅梅”,李蕾把他的源码放到github上。
同时,为了便于大家使用,还打包发布到了pypi上。
工程师小伙伴只需要一行命令就可以安装了:
pip install flutter_logo_updater
用法?刚才说过了:
flutter_logo_updater your_1024_logo.png your_flutter_project_dir
一切终于搞定了,李蕾伸了个懒腰。
一回头,看到韩梅梅正站在身后,热泪盈眶...