2016-07-15 90 views
3

有没有在xdk中将文件传输到android/res/drawable文件夹的方法?英特尔XDK中res/drawable文件

我有以下文件:

src/android/drawable/noti_icon.png 
www/src/android/drawable/noti_icon.png 

而且我通过在我intelxdk.config.additions.xml文件

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

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

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

<resource-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable"/> 
<resource-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable-hdpi"/> 
<resource-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable-xhdpi"/> 


<source-file src="src/android/res/drawable/noti_icon.png" target="res/drawable/noti_icon.png"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target="res/drawable-hdpi/noti_icon.png"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target="res/drawable-xhdpi/noti_icon.png"/> 

<source-file src="src/android/res/drawable/noti_icon.png" target-dir="res/drawable"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target-dir="res/drawable-hdpi"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target-dir="res/drawable-xhdpi"/> 

<source-file src="src/android/res/drawable/noti_icon.png" target="platforms/android/res/drawable/noti_icon.png"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target="platforms/android/res/drawable-hdpi/noti_icon.png"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target="platforms/android/res/drawable-xhdpi/noti_icon.png"/> 

<source-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable-hdpi"/> 
<source-file src="src/android/res/drawable/noti_icon.png" target-dir="platforms/android/res/drawable-xhdpi"/> 

但没有任何反应以下行tryed它。它应该工作还是全错了?我能做什么?我需要这个图标用于我的本地通知。

+0

你最终得到这方面的工作?我有同样的问题 – user3572565

+0

不是真的。我已经克隆了cordova-plugin-local-notifications一个补充: <资源文件src =“src/android/res/drawable /noti_icon_36.png“target =”res/drawable-hdpi/noti_icon.png“/> 到plugin.xml。将src放到插件的根文件夹中。 – Tom

回答

0

这实际上是英特尔XDK中local notifications plugin流行问题解决方案的一部分。 wiki告诉我们有3种可能性来加载通知图标,但只有在使用res类型时它似乎适用于我。我还没有找到任何这等明确的解决方案,我一直无法测试它在iOS上,但这里是我做Android上:

  1. 我所在的插件文件夹在我的英特尔XDK项目(de.appplant.cordova.plugin.local-notification适合我,但我从现在开始将它称为本地通知)。

  2. Android游戏res文件夹:本地通知的\ src \机器人\ RES

  3. 由于我仍不能确定所有不同的决议,我创建了4个文件夹:绘制,华电国际,绘制,MDPI, drawable-xhdpi和drawable-xxhdpi,并在其中放入不同大小的图标。所以在最后我不得不FE:本地通知/ src目录/安卓/ RES /提拉 - 华电国际/ noti_icon.png

  4. 现在我跟汤姆的指示,给予in this reply提示,并添加以下行本地通知\ plugin.xml文件:

    <resource-file src="src/android/res/drawable-hdpi/noti_icon.png" target="res/drawable-hdpi/noti_icon.png" /> 
    <resource-file src="src/android/res/drawable-mdpi/noti_icon.png" target="res/drawable-mdpi/noti_icon.png" /> 
    <resource-file src="src/android/res/drawable-xhdpi/noti_icon.png" target="res/drawable-xhdpi/noti_icon.png" /> 
    <resource-file src="src/android/res/drawable-xxhdpi/noti_icon.png" target="res/drawable-xxhdpi/noti_icon.png" /> 
    

的图标是现在终于可以作为的ressource并通过RES通过简单地与当地notifcations插件类型可用于:

cordova.plugins.notification.local.schedule({ 
    ...your other options... , 
    icon: "noti_icon", 
    smallicon:"noti_icon" 
}); 

(您不需要添加文件类型或“res://”类型)

最后,您应该看到自己的图标,而不是看到Android铃声图标。

还有一些其他的Google指导方针需要照顾,就像您的.png上的透明背景一样,但我不确定并且未测试这些规范是否对外观有任何影响。

0

我想这个问题是要求克服一个cordova应用程序的恶意白色图标,当它收到推送通知。

一种无痛的方式就是使用这种流行的插件注册,并获得推送通知:https://github.com/phonegap/phonegap-plugin-push

然后,只需简单地把图标某处你的应用程序的文件夹,并从你的推送服务器发送消息时,由指定的图标图像属性是这样的:

{ 
    "registration_ids": ["my device id"], 
    "data": { 
     "title": "Large Icon", 
     "message": "Loaded from assets folder", 
     "image": "www/image/logo.png" 
    } 
} 

您可以reffer这个链接: https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/PAYLOAD.md