Hoe kun je de Firebase push notificatie-icon aanpassen in Android
Na het bouwen van een Android app wordt er meestal een ronde cirkel als notificatie-icon getoond. In deze blogpost leg ik uit hoe je de notificatie-icon en de kleur ervan op een Android-apparaat kunt wijzigen. Dit is het kleine pictogram dat samen met de push-melding in de notificatiebalk wordt weergegeven.
Notificatie-icon afmetingen
De notificatie-icon moet de volgende afmetingen hebben, in pixels. Welke icon wordt gebruikt door het toestel, hangt af van het scherm van je smartphone:
- MDPI - 24 x 24 (drawable-mdpi)
- HDPI - 36 x 36 (drawable-hdpi)
- XHDPI - 48 x 48 (drawable-xhdpi)
- XXHDPI - 72 x 72 (drawable-xxhdpi)
- XXXHDPI - 96 x 96 (drawable-xxxhdpi)
Maak een nieuwe notificatie-icon
- Maak een bestand in PNG-formaat voor de notificatie-icon met een tekenprogramma. Ik ben een grote fan van Affinity Designer. Het is een betaalde applicatie maar relatief goedkoop en met veel opties.
- De achtergrond van de afbeelding moet transparant zijn. De voorgrond (de icon) moet zwart zijn. Gebruik geen andere kleuren, deze worden namelijk niet weergegeven.
- Sla de bestanden op de volgende locaties op:
Afmeting | Bestandslocatie |
---|---|
24px | app/src/main/res/drawable-mdpi/ic_notification.png |
36px | app/src/main/res/drawable-hdpi/ic_notification.png |
48px | app/src/main/res/drawable-xhdpi/ic_notification.png |
72px | app/src/main/res/drawable-xxhdpi/ic_notification.png |
96px | app/src/main/res/drawable-xxxhdpi/ic_notification.png |
De kleur van de notificatie-icon instellen
- Maak het bestand
app/src/main/res/values/colors.xml
aan als dit nog niet bestaat. - Vul het bestand met de volgende inhoud:
1<?xml version="1.0" encoding="utf-8"?>
2<resources>
3 <color name="notification_icon">#046F47</color>
4</resources>
Je kunt de kleur zelf kiezen. In dit geval heb ik voor een groene kleur gekozen.
Vervang de notificatie-icon
- Pas het bestand
app/src/main/AndroidManifest.xml
aan. Voeg de volgendemeta-data
secties toe:
1<manifest >
2 <application >
3 ...
4 <meta-data
5 android:name="com.google.firebase.messaging.default_notification_icon"
6 android:resource="@drawable/ic_notification" />
7 <meta-data
8 tools:replace="android:resource"
9 android:name="com.google.firebase.messaging.default_notification_color"
10 android:resource="@color/notification_icon" />
- Als die nog niet bestaat, voeg het
xmlns:tools="http://schemas.android.com/tools"
attribuute toe aan hetmanifest
root element zoals hieronder:
1<manifest
2 xmlns:tools="http://schemas.android.com/tools"
3
4 package="...">
Voila. Als er nu een push notificatie binnenkomt zal de app je nieuwe icon tonen in de kleur die je hebt gekozen.