Здравствуйте!
Не могу разобраться с уведомлениями, а именно с Notification.Builder setSmallIcon. Меняю иконки, а они не меняются, стандартная иконка андроид выскакивает.
Скачал иконку инстаграма, подогнал по размерам под 24х24 px. Пробовал тестить на телефоне с андроидом 10(ранее тестил на 11), там просто серый фон вместо иконки. Где-то прочитал, что иконку нужно делать белой на прозрачном фоне, попробовал - получилось, но как тогда сделать цветную иконку, как у инстаграм и т.д.?
private NotificationManager notificationManager;
private static final int NOTIFY_ID = 1;
private static String CHANNEL_ID = "my channel";
public void onCreate(...){
notificationManager = (NotificationManager)getApplicationContext().getSystemService(Context.NOTIFICATION_SERVICE);
}
...
public void createNotification(View view){
NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(getApplicationContext(), CHANNEL_ID)
.setContentTitle("Notification")
.setContentText("«Hello World!»")
.setPriority(Notification.PRIORITY_MAX)
.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.insta_user_icon))
.setSmallIcon(R.drawable.icon);
createChannelfNeeded(notificationManager);
notificationManager.notify(NOTIFY_ID, notificationBuilder.build());
}
public static void createChannelfNeeded(NotificationManager manager){
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
NotificationChannel notificationChannel = new NotificationChannel(CHANNEL_ID, CHANNEL_ID, NotificationManager.IMPORTANCE_DEFAULT);
manager.createNotificationChannel(notificationChannel);
}
}
што делоть...