ionic欢迎页及Logo自动生成图标功能复盘
平时用ionic开发移动端项目,特别喜欢的命令就是ionic cordova resources,将resources下的icon.png及splash.png自动生成不同分辨率的android及ios尺寸,美工只需要提供一张分辨率的图片即可,但是最近发现这个命令开始不听指挥了,下面来看下。
开发工具用的[email protected],[email protected],[email protected],[email protected],[email protected]或者2.7.13,[email protected]
在执行ionic cordova resources命令前需要先注册个账号,ionic signup打开浏览器页面注册账号,账号注册成功后在输入命令ionic cordova resources然后根据提示输入刚注册的显示邮箱账号及隐藏的密码,然后就会看到这次我们的主体异常 :
HTTP Error 503: POST https://res.ionic.io/api/v1/upload
根据这个异常可以在网上查下资料,大多是说你的网速不好或者图片尺寸不符合,在几年前这确实是解决部分问题的方法,都2020年了,ionic都更新到5了,明显解决不了了,看了下github上的issure就有这个问题,具体见https://github.com/ionic-team/ionic-v3/issues,问题都999未处理了,估计v3都不维护了
20200406提的,距今一个月了都未解决。。。还是自己动手吧
然后找到了cordova-res这个插件
## Install
npm install -g cordova-res
## Usage
cordova-res
* `resources/icon.(png|jpg)` must be at least 1024×1024px
* `resources/splash.(png|jpg)` must be at least 2732×2732px
对应用的logo及欢迎页的尺寸大小有要求,尺寸不符合也会生成图标失败。
然后执行cordova-res,如果未安装python,则会提示Error: Could not find any Python installation to use等异常,装上python并在环境变量中配置python路径即可
装完python后会发现node版本太低,然后到官网下载node最新版本安装,安装完成后用
node -v 看下有版本号即可,再次执行命令cordova-res会发现node版本太高了,vscode版本太低导致不支持,然后升级下vscode,接下来直接把npm、ionic、cordova等的版本均升级到最新,是否成功标识如下:
全部升级完再次执行ionic cordova resources --help看下
看到了这么一行说明:This command uses the cordova-res utility[1] to generate resources locally. 地址指向https://github.com/ionic-team/cordova-res,然后在执行下
cordova-res通常情况下会卡在这一行 info sharp Using cached C:\Users\yingch\AppData\Roaming\npm-cache\_libvips\libvips-8.9.1-win32-x64.tar.gz
我从网上找了libvips-8.9.1-win32-x64.tar.gz这个包然后放到了_libvips目录下,再次执行
cordova-res,又双叒叕出错了,如下:
Error:
Something went wrong installing the "sharp" module
Cannot find module '../build/Release/sharp.node'
这个异常的原因可以暂时不管不影响,主要是sharp不支持太高版本的node,切换node版本到6 8 10应该就没问题了,这里就不切换了,然后重新执行最初执行的命令
ionic cordova resources即可