lex*_*ith 6 android push-notification cordova phonegap-pushplugin ionic
我正在使用Ionic(Cordova + AngularJS)开发Android应用程序.有了它,我使用推送插件(https://github.com/phonegap-build/PushPlugin)
在我的资源文件夹,我有6个不同的应用程序图标规定,从ldpi到xxxhdpi
<icon src="resources/android/icon/drawable-ldpi-icon.png" density="ldpi"/>
<icon src="resources/android/icon/drawable-mdpi-icon.png" density="mdpi"/>
<icon src="resources/android/icon/drawable-hdpi-icon.png" density="hdpi"/>
<icon src="resources/android/icon/drawable-xhdpi-icon.png" density="xhdpi"/>
<icon src="resources/android/icon/drawable-xxhdpi-icon.png" density="xxhdpi"/>
<icon src="resources/android/icon/drawable-xxxhdpi-icon.png" density="xxxhdpi"/>
Run Code Online (Sandbox Code Playgroud)
现在我构建了这个之后,我的最终资源文件夹结构如下所示:
android/res/drawable-ldpi/icon.png
android/res/drawable-mdpi/icon.png
Run Code Online (Sandbox Code Playgroud)
等等...
现在,这适用于所有设备上的App图标.但是如果我得到推送通知,状态栏中出现的应用程序图标太大,所以只显示图标的中间(仅在第一秒,似乎之后会重新加载通知(如果我拉)例如,状态栏下方显示正确).
经过一些研究后,我发现我提供的图标对于一般应用程序图标是正确的,但状态栏的图标必须在另一个维度,我在这里发现:Android状态栏需要大小为25x25dp的图标,而指南推荐32x32dp .谁错了?(第二个答案)
例如,使用我的三星s5我为我的xxhdpi图标144*144px切换为72*72px大小的相同图标,它的工作原理.该图标不再被剪切.
现在问我的问题: 我如何设置这个"辅助"图标,我只在我的资源文件夹中用于通知而不覆盖原始图标?
您不需要对图像大小如此严格。将两个图标放入 platform/android/res/drawable 文件夹中。一个显示在棒棒糖导航栏上的图标(例如:small_icon.png),它需要是白色且没有背景。另一种是较旧的 Android 版本(例如:large_icon.png)。
打开位于以下位置的 PushPlugin 配置文件:
platforms/android/src/com/plugin/gcm/GCMIntentService.java
Run Code Online (Sandbox Code Playgroud)
在NotificationCompat.Builder对象中设置图标路径:
.setSmallIcon(com.domain.appName.R.drawable.small_icon)
.setLargeIcon(largeIcon)
Run Code Online (Sandbox Code Playgroud)
大图标需要是位图,所以之前定义:
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
Bitmap largeIcon = BitmapFactory.decodeResource(getResources(), com.domain.appName.R.drawable.large_icon);
Run Code Online (Sandbox Code Playgroud)
希望对您有帮助。
| 归档时间: |
|
| 查看次数: |
2756 次 |
| 最近记录: |