CodeBlanks Logo Icon CodeBlanks

Bildirim izni

Bildirim izni istemeyi öğrenirsin.

Bildirim izni

Bildirim izni, uygulamanın push bildirim gönderebilmesi için gereken onaydır. Permissions.askAsync(Permissions.NOTIFICATIONS) ile istenir. iOS'ta bu izin açıkça istenmezse bildirim gönderilemez; Android'de varsayılan açık olabilir ama yine de istemek iyi bir alışkanlıktır.

Bildirim, kullanıcıyı geri getirmek için güçlü bir araçtır; ama kötü kullanılırsa kullanıcı uygulamayı siler. Bu yüzden izni, gerçekten değer katacak bir anda istemek gerekir. Örneğin kullanıcı bir hatırlatma kurunca 'Bildirimlerimi aç' demek, açılışta istemekten daha etkilidir. Reddedilirse kullanıcı ayarlardan tekrar açabilir; bu yüzden bir 'Bildirimleri ayarlardan aç' mesajı göstermek iyidir.

Uygulama requestNotificationPermission yaz

Bir requestNotificationPermission fonksiyonu yaz. async olsun. await ile Permissions.askAsync(Permissions.NOTIFICATIONS) çağır; status döndür.

Başlangıç kodu

App.js
// requestNotificationPermission fonksiyonunu yaz
// Permissions.askAsync ile NOTIFICATIONS iznini iste; status döndür

Örnek çözüm

App.js
async function requestNotificationPermission() {
  const { status } = await Permissions.askAsync(Permissions.NOTIFICATIONS);
  return status;
}

İlk istek

iOS'ta bildirim izni ilk istendiğinde bir sistem diyaloğu görünür. Kullanıcı 'İzin ver' veya 'Reddet' seçer. Reddetse tekrar sormak diyaloğu göstermez; kullanıcı ayarlardan açmak zorundadır.

Android'de API seviyesine göre davranış değişir. Android 13+ (Tiramisu) sürümlerinde bildirim izni açıkça istenir; iOS gibi davranır. Eski sürümlerde bildirim varsayılan olarak açıktır; askAsync yine de çalışır ama diyalog göstermez. Bu yüzden uygulamanın her iki platformda da tutarlı davranması için her zaman askAsync çağırmak iyi bir alışkanlıktır. Sonucu status ile kontrol edip akışı buna göre yönetmek gerekir.

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Push bildirim için hangi izin gerekir?

App.js
Permissions.askAsync(Permissions.NOTIFICATIONS);
  • Kamera izni
  • Bildirim izni Doğru cevap
  • Konum izni
  • Mikrofon izni

Açıklama: Push bildirim için bildirim izni gerekir.

2 NOTIFICATIONS izni

Soru
await Permissions.askAsync(Permissions.____);
Cevap
await Permissions.askAsync(Permissions.NOTIFICATIONS);

Açıklama: Permissions.NOTIFICATIONS bildirim iznidir.

3 Kavramı rolüne eşle

Kavram Anlamı
NOTIFICATIONS Bildirim izni
iOS Açıkça ister
Android 13+ 13+ sürüm
Reddedildi Ayarlara yönlendir

Orta seviye bölümündeki tüm dersler