Silent Push چیست؟ تفاوت پوش بیصدا در وب و اپلیکیشن
Silent Push دو برداشت متفاوت ایجاد میکند: پوش نوتیفیکیشنی که صدا ندارد ولی قابل مشاهده است، و پیامی که برای پردازش پسزمینه میرسد و رابطی به کاربر نشان نمیدهد. این دو یک قابلیت نیستند. همچنین رفتار اپلیکیشن بومی را نباید به وب تعمیم داد.
پوش پسزمینه در اپلیکیشن
در اپلیکیشن بومی، بسته به پلتفرم و نوع پیام میتوان برای بعضی بهروزرسانیهای پسزمینه از پوش استفاده کرد. زمان اجرا، منابع و شرایط دریافت تحت کنترل سیستمعامل است؛ این مسیر جایگزین پردازش دائمی یا تضمین همگامسازی فوری نیست. تنظیمات و محدودیتهای Android و iOS نیز یکسان نیستند.
چرا وب پوش کانال عمومی پردازش نامرئی نیست؟
وب پوش برای ارتباطی طراحی شده که کاربر اجازه آن را داده است. مرورگرها برای مصرف باتری و رفتار نامرئی محدودیت دارند. بنابراین از دریافت push نمیتوان نتیجه گرفت سایت اجازه دارد هر کاری را بدون نمایش اجرا کند. در Safari و WebKit، حذف نمایش از مسیرهای متکی بر رویداد push میتواند برای اشتراک پیامد داشته باشد؛ وب پوش را راهی برای دورزدن الزام قابل مشاهده بودن در نظر نگیرید.
مخفیکردن پیام در صفحه فعال استثنای عمومی نیست
ممکن است محصول بخواهد وقتی کاربر همان صفحه را میبیند، پیام را داخل رابط نمایش دهد و از تکرار پوش نوتیفیکیشن سیستم جلوگیری کند. این تصمیم باید با نوع payload، مرورگر و قرارداد SDK سازگار باشد. صرف بازبودن یک تب به معنی اجازه حذف نمایش در همه پلتفرمها نیست.
در پوشفا، تنظیم کنترل نمایش Foreground را طبق مستندات SDK به کار ببرید. در مسیر Normal/data-only روی Safari/WebKit، نمایش برای رعایت الزامات پلتفرم حفظ میشود. تب مخفی، نبود پاسخ سیاست یا خطا نباید به خاموششدن تصادفی پیام تبدیل شود. پیامی که عمداً نمایش داده نشده نیز نباید مانند نمایش موفق، گزارش تحویل بگیرد.
برای بهروزرسانی رابط چه کنیم؟
وقتی صفحه فعال است، API یا ارتباط زنده میتواند داده رابط را بهروز کند. هنگام بازگشت کاربر نیز وضعیت تازه را از سرور بخوانید. برای خبررسانی خارج از صفحه، از پوش نوتیفیکیشن قابل مشاهده و مرتبط استفاده کنید. صدای پیام را هم از قابلیت پردازش نامرئی جدا کنید؛ تنظیم صدای سیستم یا کاربر ممکن است بر نمایش بیصدا اثر بگذارد.