iOS Push Notification

پوش نوتیفیکیشن iOS؛ زیرساخت حرفه‌ای Push برای آیفون و آیپد آزمایشی

APNs، Firebase، Pushfa iOS SDK، Subscriber ID، Rich Notification و Deep Link را در یک مسیر روشن به پنل ارسال، API، گزارش و Journeyهای RetenX متصل کنید.

برای اپ‌های آیفون، آیپد، فروشگاه‌ها، سرویس‌های اشتراکی و محصولاتی که تجربه iOS برایشان حیاتی است.

APNs شبکه ارسال
Swift SDK و اتصال
Rich اعلان غنی
Deep Link مسیر داخل اپ

پوش نوتیفیکیشن iOS برای تیم‌هایی است که می‌خواهند روی آیفون و آیپد نیز هویت مخاطب، ارسال تراکنشی، کمپین و اتوماسیون را یکپارچه مدیریت کنند. Pushfa iOS SDK ثبت دستگاه و Subscriber ID را به Firebase و APNs متصل می‌کند، Notification Service Extension امکان تصویر و گزارش دقیق‌تر را فراهم می‌سازد و Handlerهای اپ کاربر را از اعلان به مسیر درست هدایت می‌کنند. این صفحه هم تصمیم‌های محصول را توضیح می‌دهد و هم پیش‌نیازهای واقعی Apple Developer، Firebase و Xcode را روشن می‌کند.

امکانات

چه چیزی به دست می‌آورید

اتصال APNs و Firebase

زیرساخت iOS را با Apple Push Notification service و Firebase به‌درستی به هم وصل کنید.

مدیریت permission و token

ثبت کاربر، refresh شدن توکن و حفظ هویت مشترک را در یک مسیر شفاف دنبال کنید.

اعلان‌های rich

برای آیفون و آیپد از تصویر، action button و payload غنی استفاده کنید.

دیپ‌لینک و مسیر داخل اپ

کاربر را بعد از لمس اعلان به صفحه درست داخل اپ هدایت کنید.

گزارش کامل کمپین

تحویل، کلیک و بازگشت کاربر را مثل یک کانال جدی بازاریابی اندازه‌گیری کنید.

چطور کار می‌کند

راه‌اندازی در چند گام ساده

  1. پروژه Apple Developer، Bundle ID و Firebase را برای اپ iOS آماده کنید.
  2. Pushfa iOS SDK را به پروژه اضافه کنید و APNs را متصل کنید.
  3. مجوز اعلان، توکن و مسیرهای deep link را در اپ بررسی کنید.
  4. پیام‌های تراکنشی یا کمپین‌های بازگشتی را از پنل یا API بفرستید.
  5. نتایج را در گزارش‌های پوشفا بررسی و مسیر بازگشت را بهتر کنید.
راهنمای کامل

پوش نوتیفیکیشن iOS چگونه از پنل تا آیفون می‌رسد؟

در iOS، Apple Push Notification service یا APNs تحویل نهایی اعلان را انجام می‌دهد. Firebase Cloud Messaging لایه اتصال پروژه و توکن را فراهم می‌کند و پوشفا مدیریت سرویس، Profile مخاطب، هدف‌گیری، صف ارسال، محتوای پیام، گزارش و RetenX را روی این زنجیره قرار می‌دهد. Pushfa iOS SDK توکن و Subscriber ID را مدیریت می‌کند و نتیجه را در اختیار اپ SwiftUI یا UIKit قرار می‌دهد.
اپ iOSPermission، SDK و ثبت دستگاه
پوشفاهدف‌گیری، Queue، Payload و گزارش
Firebase و APNsمسیریابی و تحویل به دستگاه Apple
کاربرنمایش، Action و ورود به مسیر اپ
پوش نوتیفیکیشن Native iOS با Web Push روی Safari متفاوت است. برای اپ App Store از SDK نیتیو، APNs و Firebase استفاده کنید؛ Web Push روی iOS فقط برای PWA نصب‌شده روی Home Screen مسیر جداگانه‌ای دارد.
قابلیت‌ها

تجربه اعلان iOS را به یک پیام ساده محدود نکنید

پیام باید در لحظه درست نمایش داده شود و کاربر را به مقصد درست داخل اپ ببرد.

Rich Notification

با Notification Service Extension تصویر را پیش از نمایش دانلود کنید و محتوای اعلان را در محدودیت زمانی iOS غنی کنید.

Universal Link و Custom Scheme

کلیک بدنه یا Action را به محصول، سفارش، گفتگو یا صفحه درست اپ هدایت و ورودی URL را اعتبارسنجی کنید.

Foreground و Tap Handler

برای اعلان هنگام بازبودن اپ و برای Tap در Background یا Cold Start رفتار مستقل تعریف کنید.

Collapse و Expiration

اعلان‌های هم‌نوع را جایگزین کنید و TTL مناسب بگذارید تا پیام تاریخ‌گذشته به کاربر نرسد.

Additional Data

داده ساخت‌یافته‌ای مانند screen، order_id یا campaign را به Router و Analytics اپ تحویل دهید.

Delivery و Click

گزارش دریافت و کلیک را در کنار محدودیت‌های Background iOS برای تحلیل واقعی‌تر کمپین ثبت کنید.

پیش‌نیازهای واقعی

هماهنگی Apple Developer، Firebase و Pushfa

بیشتر خطاهای Push iOS از ناهماهنگی شناسه‌ها و کلیدها می‌آیند. Bundle ID در Xcode و Firebase باید یکسان باشد، APNs Authentication Key باید متعلق به Team صحیح باشد و Service Account ثبت‌شده در پوشفا نیز باید از همان Firebase Project صادر شده باشد.
جزءمحل تنظیمقاعده مهم
Bundle IDXcode و Firebase Apple Appباید دقیقاً یکسان باشد
Push NotificationsSigning & Capabilitiesبرای Target اصلی اپ فعال شود
Remote notificationsBackground Modesبرای دریافت Background فعال شود
APNs Authentication KeyApple Developer و FirebaseKey ID و Team ID صحیح ثبت شوند
GoogleService-Info.plistTarget اپمتعلق به همان Firebase App باشد
Service Account JSONفقط پنل Pushfaداخل Bundle، Git یا Extension قرار نگیرد
API Public KeyPushfaConfig داخل اپتنها کلید Pushfa مجاز در Client است
Profile و هدف‌گیری

کاربر را فراتر از APNs Token بشناسید

APNs/FCM Token ممکن است تغییر کند و نباید شناسه کاربر تلقی شود. Pushfa برای هر نصب Subscriber ID پایدار می‌سازد. بعد از Login، External ID کاربر و Custom Aliasهایی مانند crm_id یا mobile را ثبت کنید تا ارسال چنددستگاهی، RetenX و گزارش Profile 360° درست کار کنند.
روشکاربردنمونه
Subscriber IDهدف‌گیری پایدار یک نصبUUID تولیدشده توسط SDK
External IDشناسه اصلی کاربر واردشدهuser-123
Custom Aliasشناسه‌های برچسب‌دار کسب‌وکارmobile، crm_id، membership
Topicعضویت در دسته محتواییخبر فوری یا پیشنهادها
Segmentانتخاب پویا از Profile و رفتارکاربران فعال iOS یا مشترکان در آستانه تمدید
سناریوهای کسب‌وکار

iOS Push کجا بیشترین اثر را ایجاد می‌کند؟

فروشگاه و سفارش

تأیید خرید، تغییر وضعیت سفارش، موجودشدن محصول، کاهش قیمت و بازگشت مستقیم به جزئیات کالا یا سبد.

بانک، فین‌تک و بیمه

هشدار تراکنش، ورود جدید، وضعیت احراز هویت و سررسید؛ با متن حداقلی و بدون نمایش داده حساس روی Lock Screen.

رزرو، سفر و لجستیک

یادآوری زمان، تغییر گیت یا پرواز، رسیدن خودرو، وضعیت مرسوله و بازشدن Route مرتبط داخل اپ.

رسانه و محتوای پولی

خبر فوری، انتشار محتوای دنبال‌شده، پیشنهاد شخصی و بازگرداندن مشترکی که مصرف محتوا را متوقف کرده است.

سلامت و خدمات

یادآوری نوبت و اقدام لازم با رعایت حریم خصوصی و پرهیز از درج اطلاعات پزشکی حساس در متن اعلان.

SaaS و اپ اشتراکی

Onboarding، تکمیل تنظیمات، هشدار حساب، تمدید و فعال‌سازی دوباره کاربران کم‌تعامل.

پیاده‌سازی فنی

راه‌اندازی Pushfa iOS SDK با Swift Package Manager

نسخه مستندشده فعلی Pushfa iOS SDK برابر 1.0.0 و در وضعیت Beta است. راهنمای فعلی iOS 15+، Xcode 16.3+، Swift tools 6.1 و Firebase Apple SDK 12.17+ را مبنا قرار می‌دهد. برای Production همیشه Tag رسمی و README همان نسخه را مرجع نهایی قرار دهید.
  • Package رسمی https://github.com/pushfa/pushfa-ios-sdk.git را با Rule نسخه Tag شده به پروژه اضافه کنید.
  • Product اصلی Pushfa را فقط به Target اپ و PushfaExtension را فقط به Notification Service Extension متصل کنید.
  • SDK را با API Public Key در AppDelegate یا چرخه SwiftUI مقداردهی و Permission را پس از توضیح ارزش اعلان درخواست کنید.
  • اگر Firebase swizzling غیرفعال است، APNs Token و callbackهای لازم را دستی به Firebase و SDK تحویل دهید.
  • Foreground، Background، Terminated، Cold Start، Action، Universal Link و Rich Image را روی دستگاه واقعی بررسی کنید.
پس از رد Permission، iOS معمولاً دیالوگ سیستم را دوباره نمایش نمی‌دهد. کاربر را فقط پس از اقدام صریح خودش به Settings هدایت کنید؛ نمایش زودهنگام Prompt می‌تواند نرخ عضویت را برای همیشه کاهش دهد.
اتوماسیون

RetenX، پیام چندمرحله‌ای و Auth Push در iOS

اپ می‌تواند Eventهایی مانند onboarding_completed، product_view، add_to_cart و purchase را همراه پارامترهای مرتبط ثبت کند. RetenX براساس این رفتار Journey می‌سازد و Push، انتظار، شرط، SMS fallback یا Webhook را اجرا می‌کند. Auth Push نیز برای تأیید ورود روی دستگاه مورداعتماد قابل استفاده است؛ Challenge و Grant باید در Backend باقی بمانند و در UserDefaults یا Analytics ذخیره نشوند.

سبد یا فرایند نیمه‌تمام

Event شروع، زمان انتظار و Exit event مانع ارسال پیام بی‌موقع پس از تکمیل کار می‌شوند.

تمدید و فعال‌سازی

Profile، وضعیت اشتراک و رفتار اخیر برای انتخاب پیام و کانال مناسب ترکیب می‌شوند.

ورود امن

دستگاه مورداعتماد درخواست را نمایش می‌دهد؛ Backend Grant یک‌بارمصرف را تأیید و Session را صادر می‌کند.

گزارش و بهینه‌سازی

عملکرد iOS Push را با شاخص درست بسنجید

شاخصمعنیتصمیم بعدی
Permission rateنسبت کاربران دارای اجازه اعلانزمان و متن Pre-prompt را اصلاح کنید
Deliveryرسیدن/پردازش اعلان در محدودیت‌های iOSAPNs، Token، Extension و TTL را بررسی کنید
Click rateجذابیت و ارتباط پیام با نیاز مخاطبعنوان، زمان، Action و مقصد را آزمایش کنید
Cold-start completionرسیدن صحیح کاربر به مقصد پس از LaunchRouter و Pending Route را اصلاح کنید
Conversionاقدام نهایی مانند خرید یا تمدیدEvent هدف و Attribution را در RetenX تعریف کنید
Disable/opt-outخستگی یا بی‌اعتمادی مخاطبFrequency Cap و Segmentation را بهبود دهید
سوالات متداول

پرسش‌هایی که معمولاً قبل از شروع پیش می‌آیند

برای iOS حتماً APNs لازم است؟
بله. تحویل نهایی اعلان Native iOS با APNs انجام می‌شود. Pushfa از Firebase Cloud Messaging برای اتصال پروژه و ارسال به APNs استفاده می‌کند.
Pushfa iOS SDK چه نسخه‌هایی را پشتیبانی می‌کند؟
راهنمای نسخه 1.0.0 فعلی iOS 15+، Xcode 16.3+، Swift tools 6.1 و Firebase Apple SDK 12.17+ را مبنا قرار می‌دهد. برای نسخه‌های بعدی README Tag رسمی را بررسی کنید.
چرا Permission اعلان دوباره نمایش داده نمی‌شود؟
iOS پس از رد Permission معمولاً دیالوگ سیستم را دوباره در اختیار اپ نمی‌گذارد. فقط با اقدام صریح کاربر می‌توانید مسیر Settings اپ را پیشنهاد دهید.
می‌توان اعلان همراه تصویر فرستاد؟
بله. برای دانلود و الصاق تصویر پیش از نمایش باید Notification Service Extension بسازید و Product مستقل PushfaExtension را به همان Target اضافه کنید.
فرق Universal Link و Custom URL Scheme چیست؟
Universal Link از دامنه HTTPS و Associated Domains استفاده می‌کند و در صورت پیکربندی صحیح امن‌تر و قابل‌اعتمادتر است. Custom Scheme ساده‌تر است، اما باید ورودی آن را allowlist و validate کنید.
آیا Push در Foreground هم نمایش داده می‌شود؟
بله، اما رفتار Foreground را UNUserNotificationCenterDelegate و Handler اپ تعیین می‌کند. می‌توانید Banner سیستم یا تجربه درون‌اپ مناسب نشان دهید.
چرا Push روی Simulator معیار کافی نیست؟
بخشی از رفتار APNs، Background execution، Extension، Provisioning و شرایط واقعی شبکه فقط روی دستگاه واقعی قابل ارزیابی مطمئن است.
آیا RetenX و Auth Push روی iOS پشتیبانی می‌شوند؟
بله. SDK هویت و Eventهای RetenX را ثبت می‌کند و دستگاه مورداعتماد می‌تواند Auth Push دریافت کند. منطق Challenge، Grant و Session باید در Backend امن اجرا شود.

پوش iOS را با یک مسیر روشن شروع کنید

حساب رایگان بسازید، مستندات iOS را ببینید و از همان ابتدا زیرساخت Push آیفون را حرفه‌ای بچینید.