Notification Permission: یہ کیا ہے، اطلاعوں کی اقسام اور کام کرنے کا اصول

مصنف: IT Sectr اشاعت: 2026-05-22 مطالعے کا وقت: 8 منٹ

Notification Permission وہ اجازت ہے جو کسی ایپ کو صارف کو پش اطلاعیں اور مقامی اطلاعیں بھیجنے کے لیے درکار ہوتی ہے۔ Android 13 اور iOS 12 سے شروع کرتے ہوئے، ایپس کو سسٹم ڈائیلاگ کے ذریعے رن ٹائم پر اس اجازت کی درخواست کرنی ہوتی ہے۔ Android Developers، 2024 کے مطابق، صارف کی واضح رضامندی کے بغیر، ایپ Android 13 اور اس سے اوپر کے آلات پر اطلاعیں نہیں دکھا سکتی۔

اہم نکات

  • Notification Permission اطلاعیں بھیجنے کے لیے ایک رن ٹائم اجازت ہے، جو Android 13+ اور iOS 12+ پر لازمی ہے۔
  • Android 13 نے POST_NOTIFICATIONS اجازت متعارف کرائی، جسے Activity Result API کے ذریعے رن ٹائم پر درخواست کرنا ضروری ہے۔
  • iOS مقامی اور پش اطلاعوں تک رسائی کی درخواست کرنے کے لیے UNUserNotificationCenter.requestAuthorization استعمال کرتا ہے۔
  • اجازت سے انکار کرنے پر ایپ نہ تو مقامی اور نہ ہی پش اطلاعیں دکھا سکتی ہے۔
  • دوبارہ درخواست پہلے انکار کے بعد ممکن نہیں ہے — صارف کو سسٹم سیٹنگز پر ری ڈائریکٹ کرنا ضروری ہے۔

Notification Permission کیا ہے؟

Notification Permission ایک سسٹم اجازت ہے جو صارف کو اطلاعیں بھیجنے کی ایپ کی صلاحیت کو کنٹرول کرتی ہے۔ Android 13 سے پہلے، تمام ایپس درخواست کے بغیر اطلاعیں دکھا سکتی تھیں — مینی فیسٹ میں اجازت کا اعلان کرنا کافی تھا۔ تاہم، سپیم اور پریشان کن اطلاعوں میں اضافے کے ساتھ، Google نے iOS کی طرح ایک لازمی رن ٹائم درخواست متعارف کرائی۔

iOS پر، اطلاع کی اجازت iOS 8 سے لازمی رہی ہے، اور iOS 12 سے عارضی اطلاعیں (Provisional Notifications) ظاہر ہوئیں — خاموش اطلاعیں جو بغیر آواز کے پہنچائی جاتی ہیں اور واضح درخواست کے بغیر اطلاع مرکز میں دکھائی جاتی ہیں۔ عارضی اطلاعیں ڈویلپر کو مکمل اجازت کی درخواست کرنے سے پہلے صارف کو اطلاعوں کی اہمیت دکھانے کی اجازت دیتی ہیں۔

Localytics (2024) کے مطابق، 61% iOS صارفین اور 55% Android صارفین درخواست کے بعد پش اطلاعیں وصول کرنے پر رضامند ہوتے ہیں۔ منظوری کی شرح براہ راست درخواست کے سیاق و سباق پر منحصر ہے: جو ایپس پہلے قیمتی تعامل کے بعد اجازت مانگتی ہیں، انہیں پہلی لانچ پر مانگنے والوں کے مقابلے میں 40% زیادہ منظوری ملتی ہے۔

اطلاعی اجازتوں کا ارتقاء

اطلاعی اجازتوں کا ارتقاء ظاہر کرتا ہے کہ کس طرح پلیٹ فارمز نے بتدریج اس مواصلاتی چینل تک ایپس کی رسائی کو محدود کیا۔ اس ارتقاء کو سمجھنا ڈویلپر کو OS کے مختلف ورژنز کو صحیح طریقے سے سنبھالنے میں مدد کرتا ہے۔

Android: آزاد رسائی سے سخت کنٹرول تک

Android 13 (2022) سے پہلے، کوئی بھی ایپ صارف کی رضامندی کے بغیر اطلاعیں دکھا سکتی تھی۔ Android 8.0 (2017) نے اطلاعی چینلز متعارف کرائے، Android 12 (2021) نے پریشان کن اطلاعوں کے خودکار بلاک کرنے کا اضافہ کیا، اور آخر میں Android 13 نے رن ٹائم پر POST_NOTIFICATIONS کی درخواست کو لازمی بنا دیا۔ جن ایپس کا targetSdkVersion 33 سے کم ہے، ان کے لیے سسٹم خود بخود اجازت دیتا ہے، لیکن Google Play اگست 2023 سے targetSdkVersion کو 33+ میں اپ ڈیٹ کرنے کا تقاضا کرتا ہے۔

iOS: بتدریج کنٹرول میں اضافہ

iOS 8 (2014) نے UIUserNotificationSettings کے ذریعے لازمی اجازت کی درخواست متعارف کرائی۔ iOS 10 (2016) نے بھرپور اطلاعوں کے تعاون کے ساتھ UNUserNotificationCenter پیش کیا۔ iOS 12 (2018) نے عارضی اطلاعیں اور گروپ بند اطلاعیں شامل کیں۔ iOS 15 (2021) نے فوکس موڈ متعارف کرایا، جو ایپ کی اجازت سے قطع نظر اطلاعوں کو بلاک کر سکتا ہے۔ App Tracking Transparency (iOS 14.5) کا اطلاعوں سے تعلق نہیں ہے، لیکن اس نے اجازت کی درخواستوں کی مجموعی ثقافت کو بھی متاثر کیا ہے۔

موجودہ حالت

فی الحال، دونوں پلیٹ فارمز کو رن ٹائم Notification Permission درخواست کی ضرورت ہوتی ہے۔ ڈویلپر اب اطلاعوں کے خودکار فعال ہونے پر بھروسہ نہیں کر سکتا۔ صارف کا مکمل کنٹرول ہے کہ کون سی ایپس اسے اطلاع دے سکتی ہیں۔ Android پر اطلاعی چینلز اور iOS پر اطلاعی زمرے صارف کو موصول ہونے والی اطلاعوں کی اقسام پر باریک کنٹرول دیتے ہیں۔

Android پر Notification Permission

Android پر Notification Permission مینی فیسٹ میں اعلان کردہ POST_NOTIFICATIONS اجازت کے ذریعے فعال کیا جاتا ہے، جس کے بعد Android 13+ کے لیے رن ٹائم درخواست ہوتی ہے۔

مینی فیسٹ میں اعلان

Android 13+ کے لیے، AndroidManifest.xml میں POST_NOTIFICATIONS اجازت کا اعلان کرنا ضروری ہے۔ Android 12 اور اس سے نیچے کے ساتھ پسماندہ مطابقت کے لیے، اجازت سسٹم کے ذریعے خود بخود دی جاتی ہے — اضافی کارروائی کی ضرورت نہیں۔

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

Kotlin میں رن ٹائم درخواست

POST_NOTIFICATIONS اجازت کی درخواست Activity Result API کے ذریعے کی جاتی ہے۔ SDK ورژن چیک کرنا ضروری ہے: Android 12 اور اس سے نیچے پر، کسی درخواست کی ضرورت نہیں — اجازت خود بخود دی گئی سمجھی جاتی ہے۔

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 اور اس سے نیچے — اجازت خود بخود دی گئی
        showNotification()
        return
    }
    if (ContextCompat.checkSelfPermission(this,
        Manifest.permission.POST_NOTIFICATIONS) == PackageManager.PERMISSION_GRANTED) {
        showNotification()
    } else {
        notificationPermissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS)
    }
}

اطلاعی چینلز بنانا

Android 8.0+ پر، ایپ کو پہلی اطلاع بھیجنے سے پہلے NotificationChannel کے ذریعے ایک اطلاعی چینل بنانا ہوگا۔ چینل کی IMPORTANCE_NONE سے IMPORTANCE_HIGH تک اہمیت کی سطح ہوتی ہے، جو یہ طے کرتی ہے کہ اطلاع آواز اور بینر کے ساتھ دکھائی جائے گی یا نہیں۔ اگر صارف نے ایپ کے لیے اطلاعیں غیر فعال کر دی ہیں، تو سیٹنگز میں دوبارہ فعال کیے جانے تک نئے چینلز موثر نہیں ہوں گے۔ مختلف اقسام کی اطلاعوں کے لیے علیحدہ چینلز بنانے کی سفارش کی جاتی ہے: پیغامات، اشتہارات، سسٹم ایونٹس۔

kotlin
private fun createNotificationChannel() {
    val channel = NotificationChannel(
        CHANNEL_ID_MESSAGES,
        "پیغامات",
        NotificationManager.IMPORTANCE_HIGH
    ).apply {
        description = "نئے پیغام کی اطلاعیں"
        enableVibration = true
    }
    val manager = getSystemService(NotificationManager::class.java)
    manager.createNotificationChannel(channel)
}

iOS پر Notification Permission

iOS پر Notification Permission UNUserNotificationCenter کے ذریعے درخواست کیا جاتا ہے۔ Apple دو قدمی طریقہ کار کی سفارش کرتا ہے: پہلے عارضی اطلاعیں درخواست کریں، پھر قدر دکھانے کے بعد مکمل اجازت درخواست کریں۔

عارضی اختیار کے ساتھ Swift میں درخواست

عارضی اطلاعیں خاموش اطلاعیں ہیں جو بغیر آواز یا بینر کے اطلاع مرکز میں ظاہر ہوتی ہیں۔ انہیں صارف کی واضح رضامندی کی ضرورت نہیں ہوتی اور وہ ایپ کو مکمل درخواست سے پہلے اطلاعوں کی قدر دکھانے کی اجازت دیتی ہیں۔ متعدد عارضی اطلاعیں وصول کرنے کے بعد، صارف اطلاع کے اندر ہی مینو کے ذریعے مکمل اطلاعیں فعال کر سکتا ہے۔

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
        // عارضی — صارف ڈائیلاگ نہیں دیکھتا
        // اطلاعی مرکز میں بغیر آواز کے اطلاعیں آتی ہیں
        registerForRemoteNotifications()
    }
}

حیثیت اور سسٹم سیٹنگز کی جانچ

iOS پر موجودہ Notification Permission حیثیت UNUserNotificationCenter.current().getNotificationSettings کے ذریعے حاصل کی جا سکتی ہے۔ .authorized، .denied، .provisional یا .notDetermined کی حیثیت ایپ کو صحیح رویہ منتخب کرنے کی اجازت دیتی ہے۔ پہلے انکار کے بعد، سسٹم ڈائیلاگ دوبارہ نہیں دکھایا جاتا — صارف کو UIApplication.openSettingsURLString کے ذریعے سیٹنگز پر ری ڈائریکٹ کرنا ضروری ہے۔ Apple مخصوص منظرناموں کے لیے عارضی اطلاعیں فراہم کرنے والی .ephemeral حیثیت (iOS 17+) کو سنبھالنے کی بھی سفارش کرتا ہے۔

اطلاعات کی درخواست کے لیے بہترین طریقہ کار

بہترین طریقہ کار Notification Permission کی درخواست میں منظوری کی شرح بڑھانے اور صارف کے نقصان کو کم کرنے کے لیے ہیں۔ غلط درخواست نہ صرف ایپ کو اطلاعیں بھیجنے کی صلاحیت سے محروم کر سکتی ہے بلکہ ایپ کو ان انسٹال کرنے کا سبب بھی بن سکتی ہے۔

پہلی لانچ پر درخواست نہ کریں

سب سے عام اینٹی پیٹرن ایپ کی پہلی لانچ پر Notification Permission کی درخواست کرنا ہے۔ صارف ابھی تک ایپ کی قدر نہیں سمجھتا اور اس کے انکار کرنے کا بہت زیادہ امکان ہے۔ بہترین لمحہ وہ ہے جب صارف نے پہلی قیمتی کارروائی کی ہو: آرڈر دیا، پیغام بھیجا، اپ ڈیٹس کو سبسکرائب کیا۔ قیمت کے بعد کا پرامپٹ منظوری کی شرح کو 65-75% تک بڑھا دیتا ہے۔

قبل از اجازت اسکرین استعمال کریں

سسٹم ڈائیلاگ سے پہلے، صارف کو موصول ہونے والی اطلاعوں کی مثالوں کے ساتھ اپنی اسکرین دکھائیں۔ متن اور آئیکن کے ساتھ مستقبل کی اطلاع کا نمونہ دکھائیں۔ اگر صارف دیکھتا ہے کہ اطلاعیں مفید اور غیر مداخلت پسند ہوں گی، تو اس کے رضامند ہونے کا امکان زیادہ ہوتا ہے۔ قبل از اجازت اسکرین پر اطلاع کا پیش نظارہ ایک مؤثر تکنیک ہے جو شرح تبادلہ کو 35-50% بڑھاتی ہے۔

iOS پر عارضی اطلاعیں استعمال کریں

iOS پر فعال طور پر عارضی اطلاعیں درخواست کرنے سے صارف کی واضح رضامندی کے بغیر اطلاعیں پہنچائی جا سکتی ہیں۔ اگر صارف ان اطلاعوں میں قدر دیکھتا ہے، تو وہ اطلاع کے سیاق و سباق کے مینو کے ذریعے مکمل اطلاعیں فعال کر سکتا ہے۔ Apple خبروں کی ایپس، موسم کی ایپس اور دیگر خدمات کے لیے اس طریقہ کار کی سفارش کرتا ہے جہاں اطلاعیں معلوماتی ہوں، لین دین پر مبنی نہ ہوں۔ Apple WWDC 2024 کے مطابق، یہ طریقہ کار مکمل منظوری کی شرح کو 20-30% بڑھاتا ہے۔

اکثر پوچھے گئے سوالات

اگر صارف نے Notification Permission سے انکار کر دیا تو کیا کریں؟

انکار کے بعد، سسٹم ڈائیلاگ دوبارہ نہیں دکھایا جاتا۔ اطلاعیں فعال کرنے کا واحد طریقہ Android پر Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) یا iOS پر UIApplication.openSettingsURLString کے ذریعے صارف کو سسٹم سیٹنگز پر ری ڈائریکٹ کرنا ہے۔ ہدایات اور آگے بڑھنے کے بٹن کے ساتھ ایک اسکرین دکھائیں۔

Android 12 اور اس سے نیچے Notification Permission کیسے کام کرتا ہے؟

Android 12 اور اس سے نیچے، Notification Permission کی ضرورت نہیں — تمام ایپس درخواست کے بغیر اطلاعیں بھیج سکتی ہیں۔ تاہم، صارف کسی بھی وقت سسٹم سیٹنگز کے ذریعے اطلاعیں غیر فعال کر سکتا ہے۔ Android 13 سے شروع کرتے ہوئے، targetSdkVersion 33+ کے لیے رن ٹائم درخواست لازمی ہے۔

Android پر اطلاعی چینلز کیا ہیں؟

NotificationChannel ایک اطلاعی زمرہ ہے جو Android 8.0 میں متعارف کرایا گیا تھا۔ ہر چینل کا ایک نام، تفصیل، اہمیت کی سطح اور گروپ ہوتا ہے۔ صارف ایپ کی تمام اطلاعیں غیر فعال کیے بغیر انفرادی چینلز کو غیر فعال کر سکتا ہے۔ مثال کے طور پر، “نئے پیغامات” چینل اور “پروموشنل میلنگ” چینل کو مختلف طریقے سے ترتیب دیا جا سکتا ہے۔

کیا Notification Permission کے بغیر اطلاعیں بھیجی جا سکتی ہیں؟

Android 13+ پر، POST_NOTIFICATIONS کے بغیر، NotificationManager.notify کا کوئی بھی کال سسٹم کے ذریعے نظر انداز کر دیا جائے گا۔ iOS پر، UNUserNotificationCenter اجازت کے بغیر، اطلاعیں پہنچائی نہیں جاتیں۔ مستثنیٰ: iOS پر Provisional (آواز نہیں، صرف اطلاع مرکز میں) اور Android 12- (اجازت درکار نہیں)۔

کیسے چیک کریں کہ ایپ کے لیے اطلاعیں فعال ہیں؟

Android پر، NotificationManagerCompat.areNotificationsEnabled() استعمال کریں۔ iOS پر، UNUserNotificationCenter.current().getNotificationSettings کال کریں اور authorizationStatus پراپرٹی چیک کریں۔ Android کے لیے، اضافی طور پر چینل کی اہمیت چیک کریں: NotificationChannel.getImportance() IMPORTANCE_NONE نہیں ہونا چاہیے۔

خلاصہ

  • Notification Permission Android 13+ اور iOS 12+ پر اطلاعیں بھیجنے کے لیے ایک لازمی رن ٹائم اجازت ہے۔
  • Android 13 نے رن ٹائم درخواست کے ساتھ POST_NOTIFICATIONS متعارف کرایا؛ Android 12 اور اس سے نیچے کے لیے، اجازت خودکار ہے۔
  • iOS رضامندی کے بغیر خاموش ترسیل کے لیے عارضی اطلاعوں کے تعاون کے ساتھ UNUserNotificationCenter استعمال کرتا ہے۔
  • قیمت کے بعد کا پرامپٹ — صارف کے پہلے قیمتی عمل کے بعد درخواست کرنے سے منظوری کی شرح 75% تک بڑھ جاتی ہے۔
  • قبل از اجازت اسکرین اطلاع کی مثال کے ساتھ صنعتی تحقیق کے مطابق شرح تبادلہ کو 35-50% بڑھاتی ہے۔
  • عارضی اطلاعیں iOS پر مکمل اجازت کی درخواست کرنے سے پہلے اطلاعوں کی قدر دکھانے کی اجازت دیتی ہیں۔
  • اطلاعی چینلز Android پر صارف کو موصول ہونے والی اطلاعوں کی اقسام پر دانے دار کنٹرول دیتے ہیں۔

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں