Notifikationskanaler
Gruppér notifikationer efter vigtighed.
Notifikationskanaler er en gratis Android Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Android Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Android Academy-kurset indeholder 4 lektioner i alt.
Notifikationskanaler
Siden Android 8.0 (API 26) skal alle notifikationer tilhøre en kanal. Kanaler grupperer relaterede notifikationer og lader brugerne styre dem individuelt i systemets Indstillinger.
Hvorfor kanaler findes
Kanaler giver brugerne detaljeret kontrol. I stedet for én kontakt for hele appen kan brugerne slå lyden fra for "Promotions" og stadig have lyd på "Messages". Det mindsker notifikationstræthed.
Kanaler er påkrævet
På API 26 og nyere sker der simpelthen ingenting, hvis du viser en notifikation uden en gyldig kanal. Du skal oprette kanalen, før du viser den første notifikation på den.
Vigtighedsniveauer
Hver kanal har en vigtighed, der angiver dens standardadfærd:
IMPORTANCE_HIGH: afspiller en lyd og vises som et banner øverst på skærmenIMPORTANCE_DEFAULT: afspiller en lydIMPORTANCE_LOW: ingen lydIMPORTANCE_MIN: ingen lyd, minimeret
Oprettelse af en kanal
Opret en NotificationChannel med et id, et navn, der er synligt for brugeren, og en vigtighed.
val channel = NotificationChannel(
"messages",
"Messages",
NotificationManager.IMPORTANCE_HIGH
).apply {
description = "Chat messages from your contacts"
}Registrering i systemet
Registrér kanalen én gang med NotificationManager via createNotificationChannel. Det er sikkert og ufarligt at oprette den igen med samme id.
val manager = context.getSystemService(NotificationManager::class.java)
manager.createNotificationChannel(channel)Opret kanaler tidligt
Et godt sted at oprette kanaler er i Application.onCreate, så de findes, før en kodegren forsøger at vise en notifikation.
class MyApp : Application() {
override fun onCreate() {
super.onCreate()
createNotificationChannels()
}
}Kanal-id'er er stabile
Kanalens id er det, du refererer til, når du viser notifikationer. Vælg stabile id'er, og gem dem i konstanter, så builderen og kanalen altid stemmer overens.
object Channels {
const val MESSAGES = "messages"
const val PROMOTIONS = "promotions"
}Brugerne bestemmer indstillingerne
Efter oprettelsen styrer brugeren kanalen. Hvis brugeren sænker dens vigtighed eller slår den fra, kan din kode ikke tilsidesætte det. Du kan kun angive den oprindelige vigtighed ved oprettelsen.
Kanalgrupper
Til apps med mange kanaler organiserer NotificationChannelGroup dem i sektioner i Indstillinger, f.eks. ved at gruppere alle kanaler for "Team A" og "Team B" separat.
Kompatibilitet før API 26
På enheder med en version under API 26 findes der ingen kanaler; kanal-id'et ignoreres ganske enkelt. Med NotificationCompat kan den samme kode fungere sikkert på tværs af versioner.
Hurtigt tjek
Test din forståelse af notifikationskanaler.
Opsummering
Du har lært om notifikationskanaler:
- API 26+ kræver, at alle notifikationer har en kanal
- Vigtighedsniveauer angiver standardadfærd for lyd og bannere øverst på skærmen
- Opret dem med
NotificationChannel, og registrér dem viacreateNotificationChannel - Opret kanaler tidligt; brugerne bestemmer i sidste ende deres indstillinger
Næste emne: oprettelse af en notifikation.
Lær Kotlin med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 36
- Lektioner
- 152
Ofte stillede spørgsmål
Er lektionen “Notifikationskanaler” gratis?
Ja — alle 3 lektioner i læringssporet Android Academy, inklusive “Notifikationskanaler”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Android Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Notifikationskanaler”?
Gruppér notifikationer efter vigtighed. Du øver dig i Android Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Android Academy?
Der kræves ingen tidligere erfaring. Android Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.
Hvor lang tid tager lektionen “Notifikationskanaler”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Android Academy-lektion?
Ja. Alle Android Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Notifikationskanaler
- Opret en notifikation
- Handlinger og deep links
- Runtime-tilladelsen til notifikationer