Cordova 科尔多瓦/爱奥尼亚资源
我正在使用ionic生成资源(图标和飞溅)。我使用的是ionic v2.1.0和cordova v6.4.0 到目前为止,我一直在使用(它在以前的版本中工作): 这是将android添加到此版本:Cordova 科尔多瓦/爱奥尼亚资源,cordova,ionic-framework,Cordova,Ionic Framework,我正在使用ionic生成资源(图标和飞溅)。我使用的是ionic v2.1.0和cordova v6.4.0 到目前为止,我一直在使用(它在以前的版本中工作): 这是将android添加到此版本: Adding android project... Creating Cordova project for the Android platform: Path: platforms/android Package: ... Name: ... Activity: M
Adding android project...
Creating Cordova project for the Android platform:
Path: platforms/android
Package: ...
Name: ...
Activity: MainActivity
Android target: android-24
Subproject Path: CordovaLib
Android project created with cordova-android@6.0.0
在以前的cli版本中,ionic resources
正在config.xml
中生成相应的条目,并且资源放置正确
但在升级cordova和/或ionic cli后,android的资源没有被复制,因此图标和飞溅仍然是cordova的。我看到了,上面说要删除android平台,然后使用以下命令:
cordova platform add android@latest
这就增加了这个平台:
Adding android project...
Creating Cordova project for the Android platform:
Path: platforms/android
Package: ...
Name: ...
Activity: MainActivity
Android target: android-25
Subproject Path: CordovaLib
Android project created with cordova-android@6.1.0
并成功复制图标和飞溅。问题是,这会创建一个额外的res
文件夹:
├── bower.json
├── config.xml
├── gulpfile.js
├── hooks
├── ionic.config.json
├── node_modules
├── package.json
├── platforms
├── plugins
├── res
│ ├── drawable-land-hdpi
│ ├── drawable-land-ldpi
│ ├── drawable-land-mdpi
│ ├── drawable-land-xhdpi
│ ├── drawable-land-xxhdpi
│ ├── drawable-land-xxxhdpi
│ ├── drawable-port-hdpi
│ ├── drawable-port-ldpi
│ ├── drawable-port-mdpi
│ ├── drawable-port-xhdpi
│ ├── drawable-port-xxhdpi
│ ├── drawable-port-xxxhdpi
│ ├── mipmap-hdpi
│ ├── mipmap-ldpi
│ ├── mipmap-mdpi
│ ├── mipmap-xhdpi
│ ├── mipmap-xxhdpi
│ └── mipmap-xxxhdpi
├── resources
├── scss
└── www
因此,我的问题是:
- 这个额外生成的
文件夹的用途是什么res
- 我可以安全地删除
文件夹吗res
- 如果我想在android和ios上使用不同的图标,我现在如何管理?(在以前的案例中,我在备份文件夹中复制为android生成的资源,为ios生成新资源,然后将它们混合在一起,并使cordova准备好)
resources
文件夹中。将它们添加到respresources/android
和resources/ios
,如果它们需要不同,则取而代之。然后运行离子资源cordova platform update android@6.1.0
之后,资源将上载到platforms/android中的res目录,您可以安全地从项目根目录中删除res目录
编辑
此问题已在Cordova 6.5.0中修复
使用以下命令将项目更新为Cordova 6.5.0
npm install -g cordova
如果您已经使用cordova早期版本构建了项目,则必须更新项目的android平台
cordova platform update android@6.1.1
这不起作用:当再次运行
爱奥尼亚资源
时,它会重新生成所有资源(无论它们是否已生成,因此它们会被覆盖),请确保已安装这两个平台,并且资源文件夹本身中没有图标。然后将icon.png添加到resources文件夹中的android和ios文件夹中,并运行ionic resources。是的,两个文件夹中的资源都将被覆盖,这就是您想要的。构建后,资源将复制到两个平台中的正确文件夹中。有关更多信息:
cordova platform update android@6.1.1