Android-Push-Benachrichtigungen: Das Symbol wird in der Benachrichtigung nicht angezeigt, stattdessen wird ein weißes Quadrat angezeigt

Lesezeit: 2 Minuten

Android Push Benachrichtigungen Das Symbol wird in der Benachrichtigung nicht angezeigt stattdessen
Blauer Fluss

Meine App generiert eine Benachrichtigung, aber das Symbol, das ich für diese Benachrichtigung festgelegt habe, wird nicht angezeigt. Stattdessen bekomme ich ein weißes Quadrat.

Ich habe versucht, die Größe des PNG des Symbols zu ändern (Abmessungen 720 x 720, 66 x 66, 44 x 44, 22 x 22). Seltsamerweise ist das weiße Quadrat kleiner, wenn kleinere Abmessungen verwendet werden.

Ich habe dieses Problem sowie die richtige Art und Weise zum Generieren von Benachrichtigungen gegoogelt, und nach dem, was ich gelesen habe, sollte mein Code korrekt sein. Leider sind die Dinge nicht so, wie sie sein sollten.

Mein Telefon ist ein Nexus 5 mit Android 5.1.1. Das Problem tritt auch bei Emulatoren auf, einem Samsung Galaxy s4 mit Android 5.0.1 und einem Motorola Moto G mit Android 5.0.1 (beide von mir ausgeliehen und gerade nicht vorhanden).

Es folgt der Code für Benachrichtigungen und zwei Screenshots. Wenn Sie weitere Informationen benötigen, können Sie diese gerne anfordern.

Danke euch allen.

@SuppressLint("NewApi") private void sendNotification(String msg, String title, String link, Bundle bundle) {
    NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
    Intent resultIntent = new Intent(getApplicationContext(), MainActivity.class);
    resultIntent.putExtras(bundle);
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
            resultIntent, Intent.FLAG_ACTIVITY_NEW_TASK);
    Notification notification;
    Uri sound = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.notificationsound);
    notification = new Notification.Builder(this)
                .setSmallIcon(R.drawable.lg_logo)
                .setContentTitle(title)
                .setStyle(new Notification.BigTextStyle().bigText(msg))
                .setAutoCancel(true)
                .setContentText(msg)
                .setContentIntent(contentIntent)
                .setSound(sound)
                .build();
    notificationManager.notify(0, notification);
}

ohne die Benachrichtigung zu öffnen
Benachrichtigungen geöffnet

  • Ein mögliches Duplikat des Benachrichtigungsleistensymbols wird in Android 5 Lollipop weiß

    – Ciro Santilli 新疆再教育营六四事件法轮功郝海东

    8. Februar 2016 um 20:39 Uhr

  • Hier ist eine Arbeit um stackoverflow.com/a/39142981/1939564

    – Muhammad Babar

    25. August 2016 um 13:13 Uhr

  • hat dieses Problem behoben? Ich stehe immer noch vor dem gleichen Problem, in der oberen Statusleiste wird immer noch der Leerraum für die Benachrichtigung angezeigt, wenn ich das transparente Bild hinzufüge

    – Angel Janniee

    16. Mai 2017 um 8:39 Uhr

  • Ja, ich habe es behoben, indem ich ein transparentes Symbol erstellt oder auf SDK-Version 20 oder niedriger abgezielt habe. Wenn dies das Problem nicht behebt, hat Ihr ähnliches Problem möglicherweise eine andere Ursache. Ich schlage vor, die Ziel-SDK-Version auf 20 einzustellen und zu prüfen, ob sich dadurch etwas ändert. Wenn nicht, bin ich mir nicht sicher, ob diese Frage dir helfen kann 🙁

    – Blauer Fluss

    16. Mai 2017 um 14:05 Uhr

  • Wow Danke. Ich dachte, sie sollten ganz weiß sein, da einige Apps, die ich auf meinem Telefon habe, farbige Symbole haben. Jetzt sehe ich den Grund. Danke!

    – Blauer Fluss

    12. Juni 2015 um 4:59 Uhr

  • Indem man sagt targetSdkVersion 20, du hast meinen Tag gerettet! Vielen Dank.

    – Arshad Ali

    11. August 2016 um 2:53 Uhr

  • Es ist eine schlechte Form, die targetSDK-Version nur wegen der Symbole auf <21 zu setzen. Es ist besser, es richtig zu beheben, wie in dieser Antwort beschrieben: stackoverflow.com/questions/27343202/…

    – Benutzer90766

    19. Dezember 2016 um 10:24 Uhr

  • aber im Hintergrund, wenn die App nicht im Stapel ist, zeigt sie die weißen Symbole, was zu tun ist, um in jedem Fall das gleiche Ergebnis zu erzielen

    – Pratik Vyas

    2. Januar 2018 um 8:29 Uhr

  • Ich habe alles versucht, aber es funktioniert nicht. In der Manifestdatei wird immer noch ein Punkt mit einer Farberwähnung angezeigt

    – Harter Schah

    23. April 2019 um 11:23 Uhr

  • Vielen Dank für den Hinweis mit den Metadaten im Manifest.

    – Eugen Timm

    1. Juni 2018 um 17:39 Uhr

  • Wie platzieren Sie “@drawable/ic_notification”? ist es ein Symbol? viele? ist es PNG?

    – Lukas Pighetti

    8. August 2018 um 22:16 Uhr

  • @LukePighetti es können viele sein, wenn Sie Bilder unterschiedlicher Größe für mehrere Bildschirmauflösungen hochladen. Andernfalls kann es sich um eine PNG-Datei in Ihrem Drawable-Verzeichnis handeln.

    – Ruchir Baronia

    8. August 2018 um 22:18 Uhr

  • @RuchirBaronia also für das obige Beispiel res/drawable/ic_notification.png der Größe 196×196?

    – Lukas Pighetti

    8. August 2018 um 22:19 Uhr

  • thx @RuchirBaronia, für die positiv gestimmt Meta-data Tag-Vorschlag.

    – Ravi Wanija

    9. Juli 2019 um 4:55 Uhr

  • Ihre Antwort ist noch besser als die, die ich akzeptiert habe. Ich wünschte, ich könnte deine auch akzeptieren. Ich kann nicht, aber Sie haben meine +1 und meine Dankbarkeit. Prost!

    – Blauer Fluss

    12. Juni 2015 um 5:00 Uhr

  • Das ist keine sehr gute Antwort. Was wäre, wenn die Stakeholder des Projekts auf Android 7 abzielen müssten? Ich kann nicht einfach auf eine SDK-Version davor abzielen.

    – Neon Warge

    6. März 2017 um 1:34 Uhr

  • Diese Antwort wurde abgelehnt, da sie falsch ist. Der Fragesteller sagt, dass ich meine App nicht auf SDK21 ausführen kann. Die Antwort lautet “Verwenden Sie kein SDK 21”.

    – Utsav Gupta

    29. November 2017 um 7:47 Uhr

  • Das ist wirklich keine Lösung.

    – Jose Gómez

    6. Dezember 2017 um 1:47 Uhr

  • Ich kann in den aktuellen Designrichtlinien nichts finden, was vorschreibt, dass das Icon weiß auf transparentem Hintergrund sein muss. Trotz der schlechten Dokumentation scheint es immer noch der Fall zu sein.

    – Imagination

    17. Juli 2019 um 0:42 Uhr

  • Sie sind definitiv ein Lebensretter. Ich danke dir sehr

    – Jayant Dhingra

    29. November 2020 um 20:33 Uhr


  • Sie sind definitiv ein Lebensretter. Ich danke dir sehr

    – Jayant Dhingra

    29. November 2020 um 20:33 Uhr


  • Ich habe getestet setColor auf Kitkat (API 19) und IceCreamSandwich (API 15), in beiden Fällen ignoriert es die Farbe aber ist nicht abgestürzt. Kann ich die Überprüfung der Betriebssystemversion also getrost weglassen?

    – Maria

    8. August 2017 um 10:19 Uhr

924050cookie-checkAndroid-Push-Benachrichtigungen: Das Symbol wird in der Benachrichtigung nicht angezeigt, stattdessen wird ein weißes Quadrat angezeigt

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy