10

Jak pokazano na rysunku ...
Otrzymuję ikonę powiadomienia (po lewej na czerwony kolor).
Ale muszę wyświetlać ikonę aplikacji, jak pokazano przez czarną strzałkąJak ustawić ikonę aplikacji jako ikonę powiadomienia w szufladzie powiadomień

enter image description here

public void notify(View view){ 
    notification.setSmallIcon(R.drawable.ic_stat_name); 
    notification.setTicker("Welcome to ****"); 
    notification.setWhen(System.currentTimeMillis()); 
    notification.setContentTitle("abcd"); 
    notification.setContentText("abcd"); 


    Intent intent = new Intent(this, home.class); 
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
    notification.setContentIntent(pendingIntent); 


    NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
    nm.notify(uniqueID, notification.build()); 
} 
+2

co pan spróbować? –

+0

W narzędziu do tworzenia powiadomień użyj .setSmallIcon (R.drawable.ic_launcher) – Sathish

+0

Opublikowałem mój kod –

Odpowiedz

30

Zaleca się, aby umieścić swój kod tak, że można go rozwiązać. Każdy sposób wypróbować ten kod na swojej powiadomień budowniczego:

NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context) 
       .setSmallIcon(R.mipmap.ic_launcher) 
       .setLargeIcon(BitmapFactory.decodeResource(context.getResources(), 
         R.mipmap.ic_launcher)) 
       .setContentTitle(title) 
       .setContentText(message) 
       .setAutoCancel(true) 
       .setSound(defaultSoundUri) 
       .setContentIntent(pendingIntent); 

     android.app.NotificationManager notificationManager = 
       (android.app.NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 

     notificationManager.notify(0 /* ID of notification */, notificationBuilder.build()); 

Ustaw Duża ikona robi trick.Comment poniżej, jeśli masz jakiekolwiek dalsze informacje

+0

Opublikowałem mój kod –

+0

Dobrze, Dodaj tę linię: .setLargeIcon (BitmapFactory.decodeResource (context.getResources(), R.mipmap.ic_launcher)) – Manikanta

+0

To działało dobrze! ! Dzięki –

10

Wiem, że trochę późno, aby odpowiedzieć tutaj, a także jej już odpowiedział , ale przyszedłem tutaj, szukając łatwej poprawki za pomocą powiadomień firebase. Ktoś taki jak ja, który odwiedzę tutaj, może wykonać to rozwiązanie zalecanym i łatwym sposobem powiadomienia o zaporze, które po prostu dodaje meta-dane do manifestu.

Reference

<!-- Set custom default icon. This is used when no icon is set for incoming notification messages. --> 
<meta-data 
    android:name="com.google.firebase.messaging.default_notification_icon" 
    android:resource="@drawable/ic_stat_ic_notification" /> 
<!-- Set color used with incoming notification messages. This is used when no color is set for the incoming notification message. --> 
<meta-data 
    android:name="com.google.firebase.messaging.default_notification_color" 
    android:resource="@color/colorAccent" /> 
+1

Twoja odpowiedź była najbardziej pomocna. Dzięki stary. –

Powiązane problemy