Android Academy · Les

De runtime-machtiging voor meldingen

Vraag op Android 13+ toestemming voor meldingen.

Les 4 van 413 stappen

De runtime-machtiging voor meldingen is een gratis Android Academy-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Android Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Android Academy bevat in totaal 4 lessen.

De meldingentoestemming

Vanaf Android 13 (API 33) moeten apps een runtime-toestemming aanvragen om meldingen te plaatsen: POST_NOTIFICATIONS. Zonder deze toestemming worden je meldingen stil geblokkeerd.

Waarom deze is toegevoegd

Vóór Android 13 waren meldingen standaard ingeschakeld en moesten gebruikers diep in Instellingen zoeken om luidruchtige apps stil te zetten. De runtime-toestemming draait dit om: gebruikers geven nu expliciet toestemming, waardoor spam afneemt.

De toestemming in het manifest declareren

Declareer de toestemming eerst in AndroidManifest.xml. Dit is vereist voor elke ondersteunde versie, ook al verschijnt de vraag alleen op API 33 en hoger.

<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />

Dit is een gevaarlijke toestemming

POST_NOTIFICATIONS is geclassificeerd als een runtime-toestemming (gevaarlijke toestemming). Op Android 13 en hoger moet je deze daarom aan de gebruiker vragen en diens antwoord verwerken, net als bij camera- of locatietoegang.

Gedrag per versie

Verschillen tussen versies zijn belangrijk:

  • API 33 en hoger: je moet de toestemming tijdens runtime aanvragen; bij weigering zijn er geen meldingen
  • API 32 en lager: meldingen zijn standaard toegestaan; er is geen vraag nodig

Controleren vóór het aanvragen

Vraag de toestemming alleen aan op Android 13 en hoger, en alleen als deze nog niet is verleend. Beveilig de aanroep met een versiecontrole.

val needsRequest = Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU &&
    ContextCompat.checkSelfPermission(
        context, Manifest.permission.POST_NOTIFICATIONS
    ) != PackageManager.PERMISSION_GRANTED

Aanvragen in Compose

Gebruik dezelfde Activity Result API die je voor andere toestemmingen hebt geleerd: een launcher met het contract RequestPermission, die je start met POST_NOTIFICATIONS.

val launcher = rememberLauncherForActivityResult(
    ActivityResultContracts.RequestPermission()
) { granted ->
    // update UI based on whether notifications are allowed
}

De aanvraag starten

Start de aanvraag alleen op API 33 en hoger, bij voorkeur wanneer de gebruiker iets doet waarbij meldingen nuttig zijn, en niet blind bij het starten van de app.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
    launcher.launch(Manifest.permission.POST_NOTIFICATIONS)
}

Op het juiste moment vragen

Vraag, net als bij alle toestemmingen, op het juiste moment om toestemming. Vraag bijvoorbeeld nadat de gebruiker een functie zoals herinneringen heeft ingeschakeld en leg het voordeel uit, in plaats van dit meteen bij het openen van de app te doen.

Een weigering goed afhandelen

Raak bij een weigering niet in de problemen. Schakel instellingen uit die afhankelijk zijn van meldingen of toon een aanwijzing dat meldingen zijn uitgeschakeld, met een link naar de systeeminstellingen als de gebruiker ze later wil inschakelen.

De doel-SDK activeert de handhaving

De runtime-vereiste geldt wanneer je app API 33 of hoger als doel-SDK heeft. Als een oudere app op Android 13 draait, kan het systeem de vraag automatisch tonen bij de eerste melding, maar je moet de toestemming nog steeds expliciet aanvragen.

Korte controle

Test je begrip van de runtime-toestemming voor meldingen.

Samenvatting

Je hebt de meldingentoestemming afgehandeld:

  • Android 13 en hoger vereist de runtime-toestemming POST_NOTIFICATIONS
  • Declareer deze in het manifest en vraag deze aan met de Activity Result API
  • Beveilig aanvragen met een versiecontrole en vraag op het juiste moment
  • Beperk de functionaliteit op een nette manier wanneer de toestemming wordt geweigerd

Je hebt de cursus over meldingen afgerond.

Gratis beginnen

Leer Kotlin met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
36
Lessen
152

Veelgestelde vragen

Is de les “De runtime-machtiging voor meldingen” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Android Academy, waaronder “De runtime-machtiging voor meldingen”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Android Academy bevat in totaal 4 lessen.

Wat leer ik in “De runtime-machtiging voor meldingen”?

Vraag op Android 13+ toestemming voor meldingen. Je oefent met Android Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Android Academy te beginnen?

Ervaring vooraf is niet nodig. Android Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “De runtime-machtiging voor meldingen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Android Academy?

Ja. Elke les over Android Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Meldingskanalen
  2. Een melding bouwen
  3. Acties en deep links
  4. De runtime-machtiging voor meldingen
← Terug naar Android Academy