2016-02-19 88 views
9

我想爲我的cordova項目添加可繪製資源。我確實添加了圖標和閃屏項目。它們會被複制到我的platform/android/res/drawable中。問題是當我嘗試添加其他資源時。我怎麼做?我找不到科爾多瓦,而不是圖標和啓動畫面什麼使用Cordova添加可繪製資源

<platform name="android"> 
<icon src="xx.png" density="ldpi"/> 
<icon src="xx.png" density="mdpi"/> 
<icon src="xx.png" density="hdpi"/> 
<icon src="xx.png" density="xhdpi"/> 
<icon src="xx.png" density="xxhdpi"/> 
<icon src="xx.png" density="xxxhdpi"/> 
<splash src="xx.png" density="ldpi"/> 
<splash src="xx.png" density="mdpi"/> 
<splash src="xx.png" density="hdpi"/> 
<splash src="xx.png" density="xhdpi"/> 
<splash src="xx.png" density="xxhdpi"/> 
<splash src="xx.png" density="xxxhdpi"/> 

誰能幫助嗎?我在config.xml中看不到任何選項來添加其他可繪製資源。

+1

你能回答你自己的問題,並描述「鉤」解決方案嗎?我不知道如何實現這一點,並有與原來的帖子相同的問題。 – raider33

回答

12

編輯:

由於科爾多瓦CLI 7.xx,用科爾多瓦功能的Android 6.2.x中或科爾多瓦-IOS 4.4.x到時,你可以使用從config.xml中的資源文件的標籤,因爲我對我的解釋老插件的答案。你必須把它放在平臺標籤內。

例子:

<platform name="android"> 
    <resource-file src="www/res/drawable-hdpi/yourImage.png" target="res/drawable-hdpi/yourImage.png" /> 
</platform> 

SRC是,你必須像現在,可以在WWW在我的例子,甚至如果您不想複製該文件的項目的根。 目標是目標,這將是yourProject /平臺/平臺/目標 的例子這將是yourProject/platforms/android/res/drawable-hdpi/yourImage.png

OLD答案:

從config.xml中只能添加圖標和圖像推出

如果你想添加,你可以創建一個插件資源,並使用resource-file標籤

<resource-file src="src/android/res/drawable-hdpi/yourImage.png" target="res/drawable-hdpi/yourImage.png" /> 

或者你可以使用一個鉤子,複製圖像T Ø無論你想

+0

我去了鉤選項。看起來更乾淨,並有所有邏輯gulpfile –

+2

請給更多的解釋,它太模糊 – Cedriga

+0

爲插件閱讀https://cordova.apache.org/docs/en/latest/plugin_ref/spec.html#resource-file,爲鉤子,看到sinedied答案 – jcesarmobile

3

在接下來的人和我一樣,這裏是我的簡單的鉤要做到這一點,就擺在hooks/before_build/020_copy_resources.js

#!/usr/bin/env node 

// Copy native resources 
var rootdir = process.argv[2]; 
var exec = require('child_process').exec; 

// Native resources to copy 
var androidNativePath = 'native/android/'; 

// Android platform resource path 
var androidResPath = 'platforms/android/res/'; 

function copyAndroidResources() { 
    exec('cp -Rf ' + androidNativePath + '* ' + androidResPath); 
    process.stdout.write('Copied android native resources'); 
} 

if (rootdir) { 
    copyAndroidResources(); 
} 

只要把你的Android資源native/android/那麼,你是好走。

+0

這工作像一個魅力,但請確保遵循native/android /中文件的res文件夾的子文件夾命名約定。 –