Notification Permission: bu nədir, bildiriş növləri və iş prinsipi

Müəllif: IT Sectr Dərc olunub: 2026-05-22 Oxuma vaxtı: 8 dəq

Notification Permission — bu, tətbiqin istifadəçiyə push bildirişləri və lokal bildirişlər göndərməsi üçün tələb olunan icazədir. Android 13 və iOS 12-dən başlayaraq, tətbiqlər bu icazəni sistem dialoqu vasitəsilə icra zamanı tələb etməlidir. Android Developers, 2024-məlumatlarına görə, istifadəçinin açıq razılığı olmadan tətbiq Android 13 və daha yüksək cihazlarda bildirişləri göstərə bilməz.

Əsas məqamlar

  • Notification Permission — Android 13+ və iOS 12+-də məcburi olan, bildirişlərin göndərilməsi üçün icra zamanı icazəsi.
  • Android 13 Activity Result API vasitəsilə icra zamanı tələb edilməli olan POST_NOTIFICATIONS icazəsini təqdim etdi.
  • iOS lokal və push bildirişlərinə giriş tələb etmək üçün UNUserNotificationCenter.requestAuthorization istifadə edir.
  • İcazənin rədd edilməsi tətbiqin nə lokal, nə də push bildirişlərini göstərə bilməməsinə səbəb olur.
  • Təkrari sorğu ilk rədd edilmədən sonra mümkün deyil — istifadəçini sistem parametrlərinə yönləndirmək lazımdır.

Notification Permission nədir?

Notification Permission — bu, tətbiqin istifadəçiyə bildirişlər göndərmə qabiliyyətini tənzimləyən sistem icazəsidir. Android 13-ə qədər bütün tətbiqlər sorğu olmadan bildirişləri göstərə bilirdi — icazəni manifestdə bəyan etmək kifayət idi. Lakin spam və narahatedici bildirişlərin artması ilə Google iOS-da olduğu kimi məcburi icra zamanı sorğunu tətbiq etdi.

iOS-da bildiriş icazəsi iOS 8-dən məcburi idi və iOS 12-dən başlayaraq provisional bildirişlər meydana çıxdı — səssiz çatdırılan və açıq sorğu olmadan Bildiriş Mərkəzində göstərilən bildirişlər. Provisional bildirişlər proqramçıya tam icazə tələb etməzdən əvvəl istifadəçiyə bildirişlərin dəyərini göstərməyə imkan verir.

Localytics (2024) məlumatlarına görə, iOS istifadəçilərinin 61%-i və Android istifadəçilərinin 55%-i sorğudan sonra push bildirişlərini qəbul edir. Razılıq konversiyası birbaşa sorğun kontekstindən asılıdır: ilk dəyərli qarşılıqlı əlaqədən sonra icazə tələb edən tətbiqlər ilk açılışda tələb edənlərdən 40% daha çox razılıq alır.

Bildiriş icazələrinin təkamülü

Bildiriş icazələrinin təkamülü platformaların tətbiqlərin bu rabitə kanalına girişini mərhələli şəkildə necə məhdudlaşdırdığını göstərir. Bu təkamülü başa düşmək proqramçıya OS müxtəlif versiyalarını düzgün idarə etməkə kömək edir.

Android: sərbəst girişdən ciddi nəzarətə

Android 13-ə qədər (2022) hər hansı tətbiq istifadəçinin razılığı olmadan bildirişlər göstərə bilirdi. Android 8.0 (2017) bildiriş kanallarını təqdim etdi, Android 12 (2021) narahatedici bildirişlərin avtomatik bloklanmasını əlavə etdi və nəhayət Android 13 icra zamanı POST_NOTIFICATIONS tələb etməyi məcburi etdi. targetSdkVersion 33-dən aşağı olan tətbiqlər üçün sistem avtomatik olaraq icazə verir, lakin Google Play 2023-cü ilin avqustundan etibarən targetSdkVersion-un 33+ yenilənməsini tələb edir.

iOS: ardıcıl nəzarət gücləndirilməsi

iOS 8 (2014) UIUserNotificationSettings vasitəsilə məcburi icazə sorğunu təqdim etdi. iOS 10 (2016) zəngin bildirişlər dəstəyi ilə UNUserNotificationCenter-i təqdim etdi. iOS 12 (2018) provisional bildirişlər və qruplaşdırılmış bildirişlər əlavə etdi. iOS 15 (2021) tətbiq icazəsindən asılı olmayaraq bildirişləri bloklaya bilən Focus Mode təqdim etdi. App Tracking Transparency (iOS 14.5) bildirişlərlə əlaqəli deyil, lakin icazə sorğu mədəniyyətinə də təsir etdi.

Cari vəziyyət

Hal-hazırda hər iki platforma Notification Permission-ın icra zamanı tələb edilməsini tələb edir. Proqramçı artıq bildirişlərin avtomatik qoşulmasına güvənə bilməz. İstifadəçi hansı tətbiqlərin onu xəbərdar edə biləcəyinə tam nəzarət edir. Android-də Notification channels və iOS-da bildiriş kateqoriyaları istifadəçiyə alınan bildiriş növlərini incə sazlaşdırmağa imkan verir.

Android-də Notification Permission

Android-də Notification Permission manifestdə bəyan edilmiş POST_NOTIFICATIONS icazəsi vasitəsilə həyata keçirilir və Android 13+ üçün icra zamanı sorğu ilə tamamlanır.

Manifestdə bəyannamə

Android 13+ üçün AndroidManifest.xml-də POST_NOTIFICATIONS icazəsini bəyan etmək lazımdır. Android 12 və aşağı ilə geriyə uyğumluq üçün icazə sistem tərəfindən avtomatik verilir — əlavə tədbirlər tələb olunmur.

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

Kotlin-də icra zamanı sorğu

POST_NOTIFICATIONS icazəsi sorğu Activity Result API vasitəsilə həyata keçirilir. SDK versiyasını yoxlamaq vacibdir: Android 12 və aşağında sorğu tələb olunmur, icazə avtomatik verilmiş hesab olunur.

kotlin
private val notificationPermissionLauncher =
    registerForActivityResult(ActivityResultContracts.RequestPermission()) { granted ->
    if (granted) {
        createNotificationChannel()
        showPushNotification()
    } else {
        logPermissionDenied()
    }
}

fun requestNotificationAccess() {
    if (Build.version.SDK_INT <= Build.VERSION_CODES.S_V2) {
        // Android 12 və aşağı — icazə avtomatik verilir
        showNotification()
        return
    }
    if (ContextCompat.checkSelfPermission(this,
        Manifest.permission.POST_NOTIFICATIONS) == PackageManager.PERMISSION_GRANTED) {
        showNotification()
    } else {
        notificationPermissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS)
    }
}

Bildiriş kanallarının yaradılması

Android 8.0+-da tətbiq ilk bildirişi göndərməzdən əvvəl NotificationChannel vasitəsilə bildiriş kanalı yaratmalıdır. Kanalın əhəmiyyəti (importance) IMPORTANCE_NONE-dən IMPORTANCE_HIGH-dək dəyişir və bildirişin səslə və banner şəklində göstəriləcəyini müəyyən edir. İstifadəçi tətbiq üçün bildirişləri söndürmüşsə, yeni kanallar parametrlərdə yenidən qoşulana qədər təsirli olmayacaq. Müxtəlif bildiriş növləri üçün ayrı kanallar yaratmaq tövsiyə olunur: mesajlar, reklam, sistem hadisələri.

kotlin
private fun createNotificationChannel() {
    val channel = NotificationChannel(
        CHANNEL_ID_MESSAGES,
        "Mesajlar",
        NotificationManager.IMPORTANCE_HIGH
    ).apply {
        description = "Yeni mesajlar haqqında bildirişlər"
        enableVibration = true
    }
    val manager = getSystemService(NotificationManager::class.java)
    manager.createNotificationChannel(channel)
}

iOS-da Notification Permission

iOS-da Notification Permission UNUserNotificationCenter vasitəsilə tələb edilir. Apple iki mərhələli yanaşma tövsiyə edir: əvvəlcə provisional bildirişləri tələb edin, sonra dəyəri nümayiş etdirdikdən sonra tam icazə.

Swift-də provisional opsiyası ilə sorğu

Provisional bildirişlər — səs və banner olmadan Bildiriş Mərkəzinə daxil olan səssiz bildirişlərdir. Onlar istifadəçinin açıq razılığını tələb etmir və tətbiqə tam sorğudan əvvəl bildirişlərin dəyərini göstərməyə imkan verir. Bir neçə provisional bildiriş aldıqdan sonra istifadəçi bildirişin özündəki menyu vasitəsilə tam bildirişləri qoşa bilər.

swift
import UserNotifications

func requestNotificationPermission() {
    let center = UNUserNotificationCenter.current()
    center.requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
        if let error = error {
            print("Notification error: \(error.localizedDescription)")
            return
        }
        if granted {
            registerForRemoteNotifications()
        } else {
            handleDeniedPermission()
        }
    }
}

func requestProvisionalOnly() {
    let center = UNUserNotificationCenter.current()
    center.requestAuthorization(options: [.provisional, .alert, .badge, .sound]) { granted, error in
        // Provisional — istifadəçi dialoqu görmür
        // Bildirişlər səssiz Bildiriş Mərkəzinə gəlir
        registerForRemoteNotifications()
    }
}

Statusun yoxlanması və sistem parametrləri

iOS-da Notification Permission-ın cari statusunu UNUserNotificationCenter.current().getNotificationSettings vasitəsilə əldə etmək olar. Status .authorized, .denied, .provisional və ya .notDetermined tətbiqə düzgün davranışı seçməyə imkan verir. İlk rədd edilmədən sonra sistem dialoqu təkrarlanmır — istifadəçini UIApplication.openSettingsURLString vasitəsilə Parametrlərə yönləndirmək lazımdır. Apple həmçinin müəyyən ssenarilər üçün müvəqqəti bildirişlər təmin edən .ephemeral (iOS 17+) statusunun idarə edilməsini tövsiyə edir.

Bildiriş tələbi üçün ən yaxşı təcrübələr

Ən yaxşı təcrübələr Notification Permission sorğunun razılıq konversiyasını artırmaq və istifadəçi itkisini azaltmaq məqsədi daşıyır. Yanlış sorğu yalnız tətbiqi bildiriş göndərmə qabiliyyətindən məhrum etməklə qalmaya bilər, həm də tətbiqin silinməsinə səbəb ola bilər.

İlk açılışda sorğu etməyin

Ən geniş yayılmış anti-nümunə — ilk açılışda Notification Permission tələb etməkdir. İstifadəçi hələ tətbiqin dəyərini başa düşmür və yüksək ehtimalla rədd edəcək. Optimal an — istifadəçi ilk hədəf hərəkəti etdikdən sonra: sifariş verdi, mesaj göndərdi, yeniləmələrə abunə oldu. Post-value prompt razılıq konversiyasını 65-75%-ə qədər artırır.

Pre-permission ekranından istifadə edin

Sistem dialoqundan əvvəl istifadəçinin alacağı bildirişlərin nümunələri ilə öz ekranınızı göstərin. Mətn və ikona ilə gələcək bildirişin maketini göstərin. İstifadəçi bildirişlərin faydalı və narahatedici olmayacağını görərsə, razılaşma ehtimalı daha yüksəkdir. Bildiriş nümunəsi əvvəlcədən göstərilən ekranda konversiyanı 35-50% artıran effektiv bir üsuldur.

iOS-da provisional bildirişlərdən istifadə edin

iOS-da Provisional Bildirişlərin proaktiv sorğu istifadəçinin açıq razılığı olmadan bildirişləri çatdırmağa imkan verir. İstifadəçi bu bildirişlərdə dəyər görərsə, bildirişin kontekst menyusu vasitəsilə tam bildirişləri qoşa bilər. Apple tövsiyə edir bu yanaşmanı xəbər tətbiqləri, hava proqnozu və bildirişlərin informativ olduğu, lakin əməliyyat tələb etmədiyi digər xidmətlər üçün. Apple WWDC 2024 məlumatlarına görə, bu yanaşma tam razılıq konversiyasını 20-30% artırır.

Tez-tez verilən suallar

İstifadəçi Notification Permission-ı rədd etdikdə nə etməli?

Rədd edilmədən sonra sistem dialoqu təkrarlanmır. Bildirişləri yandırmağın yeganə yolu istifadəçini sistem parametrlərinə yönləndirməkdir: Android-də Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) və ya iOS-da UIApplication.openSettingsURLString. Təlimat və keçid düyməsi ilə ekran göstərin.

Notification Permission Android 12 və aşağıda necə işləyir?

Android 12 və aşağında Notification Permission tələb olunmur — bütün tətbiqlər sorğu olmadan bildirişlər göndərə bilər. Lakin istifadəçi istənən vaxt sistem parametrləri vasitəsilə bildirişləri söndürə bilər. Android 13-dən başlayaraq, targetSdkVersion 33+ üçün icra zamanı sorğu məcburidir.

Android-də bildiriş kanalları nədir?

NotificationChannel — Android 8.0-da təqdim edilmiş bildiriş kateqoriyasıdır. Hər bir kanalın adı, təsviri, əhəmiyyəti (importance) və qrupu var. İstifadəçi bütün tətbiq bildirişlərini söndürmədən ayrı-ayrı kanalları söndürə bilər. Məsələn, „Yeni mesajlar” kanalı və „Reklam göndərişləri” kanalı fərqli şəkildə konfiqurasiya edilə bilər.

Notification Permission olmadan bildiriş göndərmək olarmı?

Android 13+ POST_NOTIFICATIONS olmadan NotificationManager.notify-ə hər hansı zəng sistem tərəfindən görməzlikdən gəlinəcək. iOS-da UNUserNotificationCenter icazəsi olmadan bildirişlər çatdırılmır. İstisna: iOS-da Provisional (səssiz, yalnız Bildiriş Mərkəzində) və Android 12- (icazə tələb olunmur).

Tətbiq üçün bildirişlərin qoşulduğunu necə yoxlamaq olar?

Android-də NotificationManagerCompat.areNotificationsEnabled() istifadə edin. iOS-da UNUserNotificationCenter.current().getNotificationSettings çağırın və authorizationStatus xassəsini yoxlayın. Android üçün əlavə olaraq kanalın əhəmiyyətini yoxlayın: NotificationChannel.getImportance() IMPORTANCE_NONE olmamalıdır.

Nəticə

  • Notification Permission — Android 13+ və iOS 12+-də bildiriş göndərmək üçün məcburi icra zamanı icazəsi.
  • Android 13 icra zamanı sorğu ilə POST_NOTIFICATIONS təqdim etdi, Android 12 və aşağı üçün icazə avtomatikdir.
  • iOS razılıq olmadan səssiz çatdırılma üçün provisional notifications dəstəyilə UNUserNotificationCenter istifadə edir.
  • Post-value prompt — ilk dəyərli hərəkətdən sonra sorğu razılıq konversiyasını 75%-ə qədər artırır.
  • Pre-permission screen bildiriş nümunəsi ilə konversiyanı sənaye araşdırmalarına görə 35-50% artırır.
  • Provisional notifications iOS-da tam icazə tələb etməzdən əvvəl bildirişlərin dəyərini nümayiş etdirməyə imkan verir.
  • Notification channels Android-də istifadəçiyə alınan bildiriş növləri üzərində incə nəzarət verir.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun