gpt4 book ai didi

Android 状态栏图标大小 - 使用 Cordova/Phonegap 推送插件

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:37:49 24 4
gpt4 key购买 nike

我正在使用 Ionic (Cordova + AngularJS) 开发 Android 应用程序。有了它,我使用推送插件(https://github.com/phonegap-build/PushPlugin)

在我的资源文件夹中,我指定了 6 个不同的应用程序图标,从 ldpixxxhdpi

<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"/>

现在,在我构建这个之后,我最终的资源文件夹结构如下所示:

android/res/drawable-ldpi/icon.png
android/res/drawable-mdpi/icon.png

等等……

现在,这对所有设备上的应用程序图标都适用。但是如果我收到推送通知,状态栏中出现的应用程序图标太大,所以只显示图标的中间部分(只显示前几秒,之后似乎会重新加载通知(如果我拉例如在状态栏下方)它会正确显示)。

经过一番研究后,我发现我提供的图标对于一般应用程序图标是正确的,但状态栏的图标必须在另一个维度,因为我在这里发现:Android status bar expects icons of size 25x25dp while guidelines recommend 32x32dp. Who is wrong? (第二个答案)

例如,使用我的三星 s5,我将 144*144px 的 xxhdpi 图标换成 72*72px 大小的相同图标,并且可以正常工作。图标不再被剪切。


现在回答我的问题:我如何设置这个“辅助”图标,我只在我的资源文件夹中用于通知而不覆盖原始图标?

最佳答案

您不需要对图片大小有那么严格的要求。将两个图标放在 platform/android/res/drawable 文件夹中。一个显示在 Lollipop 的导航栏上(例如:small_icon.png),它需要是白色的并且没有背景。另一个是较旧的 android 版本(例如:large_icon.png)。

打开位于以下位置的 PushPlugin 配置文件:

platforms/android/src/com/plugin/gcm/GCMIntentService.java

在 NotificationCompat.Builder 对象中设置图标路径:

.setSmallIcon(com.domain.appName.R.drawable.small_icon)
.setLargeIcon(largeIcon)

大图标需要是位图,所以在这之前定义:

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;

Bitmap largeIcon = BitmapFactory.decodeResource(getResources(), com.domain.appName.R.drawable.large_icon);

希望对你有帮助。

关于Android 状态栏图标大小 - 使用 Cordova/Phonegap 推送插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30727539/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com