موبائل ڈیولپمنٹ میں پش نوٹیفیکیشنز: جوہر، اقسام اور یہ کیسے کام کرتے ہیں

مصنف: IT Sectr اشاعت: 2026-03-15 مطالعے کا وقت: 9 منٹ

پش نوٹیفیکیشنز ایپ انسٹال کرنے کے بعد صارف کے ساتھ تعامل کے سب سے مؤثر طریقوں میں سے ایک ہیں۔ یہ نئے پیغام، ڈسکاؤنٹ، مواد کی تازہ کاری کے بارے میں مطلع کرنے یا چھوڑی ہوئی ٹوکری یاد دلانے کی اجازت دیتے ہیں۔ پش نوٹیفیکیشنز (push notifications) کلاؤڈ سروسز کے ذریعے کام کرتے ہیں: Android پر Firebase Cloud Messaging (FCM) اور iOS پر Apple Push Notification Service (APNS)۔ اس مضمون میں ہم نوٹیفیکیشنز کے فن تعمیر، ان کی اقسام اور دونوں پلیٹ فارمز کے لیے سیٹ اپ کے عمل کا تجزیہ کریں گے۔ مزید معلومات کے لیے — سرکاری FCM دستاویزات دیکھیں۔

اہم نکات

  • FCM — Android اور iOS کے لیے عالمگیر سروس (APNS پراکسی کے ذریعے)
  • APNS — iOS، macOS، watchOS کے لیے Apple کی مقامی سروس
  • بھرپور نوٹیفیکیشنز میں App Extensions کے ذریعے میڈیا مواد (تصاویر، بٹن، آڈیو) شامل ہوتا ہے
  • سائلنٹ پش صارف کو دکھائے بغیر پس منظر میں ڈیٹا اپ ڈیٹ کرتا ہے
  • ڈیوائس ٹوکن — منفرد ڈیوائس شناخت کنندہ؛ اسے سرور پر ذخیرہ اور اپ ڈیٹ کرنا ضروری ہے
  • Notification Channels (Android) اور Notification Categories (iOS) — صارف کے ذریعے نوٹیفیکیشنز کی گروپ بندی اور تخصیص

پش نوٹیفیکیشنز کیا ہیں؟

پش نوٹیفیکیشن ایک پیغام ہے جو سرور ایپ کی درخواست کے بغیر موبائل ڈیوائس پر بھیجتا ہے۔ پیغام کلاؤڈ سروس (FCM یا APNS) سے گزرتا ہے، جو ایپ بند ہونے پر بھی اسے ڈیوائس تک پہنچاتا ہے۔ نوٹیفیکیشنز دو اقسام میں تقسیم ہوتے ہیں: ڈسپلے نوٹیفیکیشنز (صارف کو دکھائے جاتے ہیں) اور ڈیٹا نوٹیفیکیشنز (پس منظر پروسیسنگ کے لیے ڈیٹا منتقل کرتے ہیں)۔

پش نوٹیفیکیشن فن تعمیر میں تین اجزاء شامل ہیں: (1) ایپ سرور — FCM/APNS کو درخواست بھیجتا ہے؛ (2) کلاؤڈ سروس — نوٹیفیکیشن کو روٹ کرتی ہے؛ (3) کلائنٹ ایپ — نوٹیفیکیشن وصول اور پروسیس کرتی ہے۔ سرور کو ڈیوائس کا ڈیوائس ٹوکن معلوم ہونا چاہیے تاکہ خاص طور پر اسے نوٹیفیکیشن بھیج سکے۔ بڑے پیمانے پر ترسیل کے لیے Topic Subscription استعمال کیا جاتا ہے — موضوعاتی چینلز (خبریں، پیشکشیں، موسم) پر ڈیوائسز کی سبسکرپشن۔

ہر ڈیوائس پر، نوٹیفیکیشنز آپریٹنگ سسٹم کے ذریعے پروسیس ہوتے ہیں: Android — NotificationManager اور NotificationChannel کے ذریعے، iOS — UNUserNotificationCenter کے ذریعے۔ صارف ہر چینل کے لیے نوٹیفیکیشن رویہ ترتیب دے سکتا ہے: آواز، بینر، لاک اسکرین پر دکھانا یا مکمل طور پر غیر فعال کرنا۔ چینلز کی صحیح ترتیب مصروفیت بڑھاتی ہے اور ان سبسکرائب کی شرح کم کرتی ہے۔

IT Sectr میں، ہم شروع سے ہی پلیٹ فارم کی مخصوص خصوصیات کو مدنظر رکھتے ہوئے پش نوٹیفیکیشن سسٹم ڈیزائن کرتے ہیں۔ کلیدی فیصلے: FCM اور براہ راست APNS کے درمیان انتخاب، پے لوڈ فارمیٹ، ترسیل کی تعدد اور سبسکرپشن میکینکس۔ یہ ان حالات سے بچنے میں مدد کرتا ہے جہاں نوٹیفیکیشنز نہیں پہنچتے یا سسٹم کے ذریعے بلاک ہو جاتے ہیں۔

FCM بمقابلہ APNS

Firebase Cloud Messaging (FCM) نوٹیفیکیشنز کی ترسیل کے لیے Google کی کراس پلیٹ فارم سروس ہے۔ FCM Android، iOS، Web اور Flutter کو سپورٹ کرتا ہے۔ iOS پر، FCM APNS کے ذریعے کام کرتا ہے: FCM APNS کو درخواست بھیجتا ہے، جو ڈیوائس کو نوٹیفیکیشن پہنچاتا ہے۔ FCM کے فوائد: دونوں پلیٹ فارمز کے لیے ایک API، بلٹ ان تجزیہ، A/B ٹیسٹنگ، موضوعات اور سامعین کے حصے۔

Apple Push Notification Service (APNS) Apple کی مقامی سروس ہے۔ یہ صرف Apple ڈیوائسز (iOS، macOS، watchOS، tvOS) پر کام کرتی ہے۔ اسے TLS سرٹیفکیٹ یا ٹوکن (JWT) کے ذریعے براہ راست اجازت درکار ہے۔ APNS فراہم کرتا ہے کم سے کم ترسیل میں تاخیر اور iOS خصوصیات کے ساتھ براہ راست انضمام: PushKit، Notification Service Extension اور اہم الرٹس۔

FCM اور APNS کے درمیان انتخاب پروجیکٹ کے فن تعمیر پر منحصر ہے۔ اگر ایپ صرف iOS کے لیے ہے — APNS زیادہ کنٹرول دیتا ہے۔ اگر کراس پلیٹ فارم ہے — FCM ایک API کے ساتھ زیادہ آسان ہے۔ بہت سے پروجیکٹ FCM کو بنیادی سروس کے طور پر استعمال کرتے ہیں اور iOS پر VoIP کے لیے اضافی طور پر PushKit ترتیب دیتے ہیں۔ ہائبرڈ نقطہ نظر دونوں نظاموں سے بہترین حاصل کرنے کی اجازت دیتا ہے۔

خصوصیت FCM APNS
پلیٹ فارمزAndroid، iOS، Web، FlutteriOS، macOS، watchOS، tvOS
اجازتسرور کلید (Firebase Console)TLS سرٹیفکیٹ یا JWT ٹوکن
زیادہ سے زیادہ پے لوڈ4 KB (data)، 2 KB (notification)4 KB
موضوعاتبلٹ ان (Topic Messaging)نہیں (سرور سائیڈ پر لاگو)
سائلنٹ پشمعاونمعاون (content-available)
PushKitنہیںہاں (VoIP، لائیو سرگرمیاں)
تجزیہFirebase Analyticsبلٹ ان نہیں
بند ڈیوائس پر ترسیلمحدود (صنعت کار پر منحصر)ہاں، PushKit کے ذریعے

نوٹیفیکیشنز کی اقسام (بھرپور، سائلنٹ، انٹرایکٹو)

بھرپور نوٹیفیکیشن (Rich Notification)

بھرپور نوٹیفیکیشن ایک ایسا نوٹیفیکیشن ہے جس میں صرف متن نہیں بلکہ میڈیا مواد بھی شامل ہوتا ہے: تصاویر، ویڈیوز، آڈیو اور ایکشن بٹن۔ Android پر یہ NotificationCompat اسٹائلز کے ذریعے لاگو ہوتا ہے: BigPictureStyle (بڑی تصویر)، BigTextStyle (سمیٹا/پھیلا ہوا متن)، InboxStyle (پیغامات کی فہرست)، MediaStyle (پلے بیک کنٹرول)۔ iOS پر Notification Content Extension استعمال ہوتا ہے — پھیلے ہوئے نوٹیفیکیشن کے لیے کسٹم UI کے ساتھ ایک علیحدہ ہدف۔

سائلنٹ پش (Silent Push)

سائلنٹ پش (iOS پر content-available) ایک نوٹیفیکیشن ہے جو صارف کو دکھائے بغیر پہنچایا جاتا ہے۔ یہ پس منظر میں ڈیٹا اپ ڈیٹ کے لیے ہے: مواد کی مطابقت پذیری، پری لوڈنگ، ویجیٹ اپ ڈیٹس۔ iOS پر، سائلنٹ پش کے لیے Background Modes → Remote notifications کو فعال کرنا ضروری ہے۔ Android پر پس منظر کے نوٹیفیکیشنز کو سنبھالنے کے لیے FirebaseMessagingService onMessageReceived کے ساتھ استعمال ہوتا ہے۔ اہم: iOS پر، سائلنٹ پش کی تعدد کی حدود ہوتی ہیں اور اگر ایپ پیش منظر میں نہ ہو تو ترسیل کی ضمانت نہیں دیتا۔

انٹرایکٹو نوٹیفیکیشن (Interactive Notification)

انٹرایکٹو نوٹیفیکیشن صارف کو ایپ کھولے بغیر کارروائی کرنے کی اجازت دیتا ہے۔ Android پر یہ نوٹیفیکیشن میں بٹن (Action) ہوتے ہیں: "جواب دیں"، "منظور کریں"، "مسترد کریں"۔ کارروائیاں PendingIntent کے ذریعے پروسیس ہوتی ہیں، جو BroadcastReceiver یا Service شروع کرتا ہے۔ iOS پر، Notification Action UNNotificationAction اور UNNotificationCategory کے ذریعے رجسٹر ہوتی ہے۔ بٹن foreground (ایپ کھولتا ہے)، background (پس منظر میں چلتا ہے) یا destructive (ناقابل واپسی کارروائی — حذف، بلاک) ہو سکتے ہیں۔

Notification Content Extension اور Service Extension

Notification Content Extension (iOS) — لمبے دباؤ یا 3D Touch پر پھیلا ہوا نوٹیفیکیشن مواد دکھانے کے لیے کسٹم ویو کنٹرولر۔ Notification Service Extension (iOS) — ڈسپلے سے پہلے نوٹیفیکیشن مواد میں ترمیم کرنے کے لیے مڈل ویئر: E2E پیغامات کو ڈی کرپٹ کرنا، تصاویر لوڈ کرنا، خفیہ ڈیٹا کو مبہم کرنا۔ Android پر کوئی براہ راست مشابہ نہیں ہے — تمام تبدیلیاں FirebaseMessagingService میں کی جاتی ہیں۔

Android اور iOS پر نوٹیفیکیشنز کی ترتیب

Android پر ترتیب

Android کے لیے ضروری ہے: (1) پروجیکٹ میں Firebase SDK شامل کرنا (google-services.json)؛ (2) نوٹیفیکیشنز کے ہر زمرے کے لیے NotificationChannel (Android 8+) بنانا؛ (3) ٹوکن اور آنے والے پیغامات حاصل کرنے کے لیے FirebaseMessagingService کو لاگو کرنا۔ Notification Channel لازمی ہے — اس کے بغیر Android 8+ پر نوٹیفیکیشنز ظاہر نہیں ہوں گے۔ چینلز کی ترجیح ہوتی ہے (IMPORTANCE_HIGH — آواز + پاپ اپ، IMPORTANCE_LOW — بغیر آواز) اور صارف سسٹم سیٹنگز میں انہیں ترتیب دے سکتا ہے۔

iOS پر ترتیب

iOS کے لیے ضروری ہے: (1) Xcode میں Push Notifications کی صلاحیت کو فعال کرنا؛ (2) Apple Developer Portal پر APNS کلید ترتیب دینا؛ (3) UNUserNotificationCenter.requestAuthorization کے ذریعے اجازت طلب کرنا — یہ ایک سسٹم ڈائیلاگ ہے جو ایک بار دکھایا جاتا ہے۔ صارف کا جواب اہم ہے: اگر اجازت نہ دی گئی تو نوٹیفیکیشنز نہیں پہنچیں گے۔ سسٹم ڈائیلاگ دکھانے سے پہلے صارف کو یہ سمجھانے کی سفارش کی جاتی ہے کہ نوٹیفیکیشنز کی ضرورت کیوں ہے (pre-permission prompt)۔

آلات اور ٹوکن

ڈیوائس ٹوکن (iOS) اور رجسٹریشن ٹوکن (Android) پش نوٹیفیکیشنز کے لیے منفرد ڈیوائس شناخت کنندہ ہیں۔ ٹوکن پہلی ایپ لانچ پر پیدا ہوتا ہے اور تبدیل ہو سکتا ہے: دوبارہ انسٹال کرنے، ڈیٹا صاف کرنے، پرائیویسی سیٹنگز ری سیٹ کرنے پر۔ سرور کو باقاعدگی سے ٹوکن اپ ڈیٹ کرنے چاہئیں۔ Firebase فراہم کرتا ہے onNewToken کے ذریعے ٹوکن مینجمنٹ کے لیے آسان API، نیز ٹیسٹ نوٹیفیکیشن بھیجنے کے لیے پینل (Firebase Console → Cloud Messaging)۔

Topic Subscription FCM کے سب سے مؤثر میکانزم میں سے ایک ہے۔ ڈیوائس کسی موضوع (مثلاً "news"، "promo_users_ios") کو سبسکرائب کرتی ہے، اور سرور ٹوکن کی فہرست ذخیرہ کیے بغیر موضوع کے مطابق نوٹیفیکیشنز بھیجتا ہے۔ Firebase Topics فی موضوع دس لاکھ سبسکرائبرز اور ایکسپریشن لینگویج کے ذریعے مشروط ترسیل (Condition) کو سپورٹ کرتا ہے: "'news' in topics && ('US' in topics || 'UK' in topics)"۔

Notification Payload FCM/APNS کے ذریعے بھیجا جانے والا JSON ڈھانچہ ہے۔ FCM کے لیے: علیحدہ notification (مرئی حصہ — عنوان، باڈی، تصویر) اور data (ایپ کے لیے کسٹم فیلڈز)۔ APNS کے لیے: alert، badge، sound، category اور content-available کے ساتھ aps ڈکشنری۔ درست پے لوڈ ڈھانچہ اہم ہے: اگر notification + data ایک ساتھ آتے ہیں تو پس منظر میں ایپ کو data نہیں مل سکتا۔ Android کے لیے صرف data پیغامات استعمال کرنے اور FCM Console کے ذریعے بصری فیلڈز علیحدہ بھیجنے کی سفارش کی جاتی ہے۔

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

FCM اور APNS میں کیا فرق ہے؟

FCM (Firebase Cloud Messaging) Android اور کراس پلیٹ فارم نوٹیفیکیشنز کے لیے Google کی سروس ہے۔ APNS (Apple Push Notification Service) صرف iOS/macOS کے لیے Apple کی سروس ہے۔ FCM نوٹیفیکیشنز پہنچا سکتا ہے iOS پر APNS کے ذریعے، پراکسی سرور کے طور پر کام کرتے ہوئے۔

بھرپور نوٹیفیکیشن (Rich Notification) کیا ہے؟

بھرپور نوٹیفیکیشن میڈیا مواد (تصاویر، ویڈیوز، آڈیو، ایکشن بٹن) کے ساتھ ایک بہتر نوٹیفیکیشن ہے۔ iOS پر یہ Notification Content Extension کے ذریعے لاگو ہوتا ہے؛ Android پر BigPictureStyle اور InboxStyle کے ذریعے۔

ڈیوائس ٹوکن کیسے کام کرتا ہے؟

ڈیوائس ٹوکن پش نوٹیفیکیشنز بھیجنے کے لیے منفرد ڈیوائس شناخت کنندہ ہے۔ Android پر یہ FCM کا رجسٹریشن ٹوکن ہے؛ iOS پر APNS کا ڈیوائس ٹوکن ہے۔ ٹوکن تبدیل ہو سکتا ہے ایپ دوبارہ انسٹال کرنے یا سیٹنگز ری سیٹ کرنے پر، اس لیے اسے سرور پر اپ ڈیٹ کرنے کی ضرورت ہے۔

سائلنٹ پش کیا ہے اور اس کی ضرورت کیوں ہے؟

سائلنٹ پش (خاموش نوٹیفیکیشن) ایک نوٹیفیکیشن ہے جو صارف کو دکھائے بغیر ہوتا ہے۔ یہ پس منظر میں ڈیٹا اپ ڈیٹ کے لیے استعمال ہوتا ہے: مواد کی مطابقت پذیری، ویجیٹ اپ ڈیٹس، پری فیچنگ۔ iOS پر اسے فعال کرنے کی ضرورت ہے Background Modes → Remote notifications۔

PushKit عام پش نوٹیفیکیشنز سے کیسے مختلف ہے؟

PushKit VoIP ایپس (کالز، میسنجر) میں استعمال ہونے والی اعلی ترجیحی نوٹیفیکیشنز کی ترسیل کے لیے Apple فریم ورک ہے۔ PushKit نوٹیفیکیشن پہنچاتا ہے چاہے ایپ بند ہو اور پروسیسنگ کے لیے ایپ لانچ کی ضمانت دیتا ہے۔

خلاصہ

  • FCM — Google کی کراس پلیٹ فارم سروس؛ APNS — Apple کی مقامی سروس
  • بھرپور نوٹیفیکیشن میں میڈیا اور بٹن شامل ہیں؛ سائلنٹ پش صارف کو دکھائے بغیر ڈیٹا اپ ڈیٹ کرتا ہے
  • Notification Channel (Android) اور Notification Category (iOS) — نوٹیفیکیشنز کی گروپ بندی کے لیے لازمی
  • ڈیوائس ٹوکن — منفرد شناخت کنندہ؛ اسے سرور پر باقاعدگی سے اپ ڈیٹ کرنا ضروری ہے
  • Topic Subscription ٹوکن کی فہرست ذخیرہ کیے بغیر بڑے پیمانے پر ترسیل کو آسان بناتا ہے
  • PushKit — اہم نوٹیفیکیشنز کے لیے (VoIP، جان لیہ الرٹس)
  • Notification Payload کو پلیٹ فارم کے مطابق ترتیب دیا جانا چاہیے: FCM کے لیے notification + data، APNS کے لیے aps

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

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

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