Android 6.0にアップグレードしましたが、アプリに問題があります。
ステータスバーの背景色が白でない場合、通知アイコンは良好です。 (通知アイコンpngには白とアルファのみが含まれています)
しかし、一部のアプリが背景色を白に変更しても、通知アイコンが黒に反転しません。
ステータスバーの背景色が他のアプリによって白に設定されているときに、白い通知アイコンを黒に反転させるにはどうすればよいですか? (色アイコンの使い方は言うつもりはありません。)
下の画像は問題を示しています。
通知ビルドコード
Notification.Builder mBuilder =
new Notification.Builder(context)
.setSmallIcon(R.drawable.ic_notifications_none)
.setPriority(priority2)
.setOngoing(true);
mBuilder.setContent(generateMessageView(message));
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
NotificationManager mNotificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mBuilder.setContentIntent(intent);
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
values-v23/styles.xml
<style name="AppTheme" parent="Android:Theme.Material.NoActionBar">
</style>
**解決策を見つけました**
通知アイコンをdrawable- * dpiではなくdrawableディレクトリに追加しました。今それは働いています。
答えるのは遅いですが、同じ問題を抱えている他の人にとっては、
私にもこの問題があり、グラフィックアイコンに問題があることがわかりました。このオンラインツールを使用して問題を解決できます。このリンクを開く:
画像を選択し(サイズが大きい)、リソースをダウンロードしてプロジェクトにコピーします。
最後に、.setSmallIcon(R.drawable.ICON_NEW_NAME)
を使用して通知アイコンを設定します
お役に立てれば
問題はデバイスAndroid 5.0以上)にあると思います。
https://developer.Android.com/design/patterns/notifications.html
https://developer.Android.com/about/versions/Android-5.0-changes.html
これが解決策です:
_Notification notification = new Notification.Builder(context)
.setAutoCancel(true)
.setContentTitle("My notification")
.setContentText("Look, white in Lollipop, else color!")
.setSmallIcon(getNotificationIcon())
.build();
return notification;
_
およびメソッドgetNotificationIcon()
:
_private int getNotificationIcon() {
boolean useWhiteIcon = (Android.os.Build.VERSION.SDK_INT >= Android.os.Build.VERSION_CODES.Lollipop);
return useWhiteIcon ? R.drawable.icon_black : R.drawable.ic_nomarl;
}
_