Push & Advanced: ภาพรวม
ความสามารถขั้นสูงด้าน engagement
หัวข้อที่มีชื่อว่า “ความสามารถขั้นสูงด้าน engagement”Progressive Web App ไม่ได้จำกัดอยู่แค่การทำงานแบบ offline เท่านั้น แพลตฟอร์ม browser มี API สำหรับ engagement หลายชุดที่ทำให้ PWA ของคุณทำงานได้เหมือนแอป native ชั้นหนึ่ง — ตื่นขึ้นมาส่ง notification, แสดงจำนวน badge ที่ยังไม่ได้อ่าน, รับเนื้อหาที่ผู้ใช้แชร์มา และรีเฟรชข้อมูลใน background
โมดูลนี้ครอบคลุมความสามารถห้าอย่าง:
| ความสามารถ | API | ต้องการ server? | ต้องขอ permission? |
|---|---|---|---|
| Local notifications | Notifications API | ไม่ | ใช่ |
| Push messages | Push API | ใช่ (VAPID) | ใช่ |
| App badge | Badging API | ไม่ | ไม่ |
| แชร์เนื้อหา | Web Share + Share Target | ไม่ | ไม่ |
| รีเฟรชใน background | Periodic Background Sync | ไม่ | ใช่ (ต้อง install) |
ทำไม API เหล่านี้จึงสำคัญ
หัวข้อที่มีชื่อว่า “ทำไม API เหล่านี้จึงสำคัญ”ผู้ใช้ใช้เวลาส่วนใหญ่อยู่นอกแอปของคุณ API เหล่านี้คือสะพานที่พาพวกเขากลับมา:
- Notifications ดึงผู้ใช้กลับมาด้วยข้อความที่เหมาะสมและทันเวลา — อัปเดตออเดอร์, ข้อความแชท, การแจ้งเตือน
- Push ทำให้ server ของคุณเริ่ม notification ได้แม้ผู้ใช้จะไม่มีแท็บเปิดอยู่
- Badging แสดงจำนวน unread บน icon แอปโดยไม่ต้องให้ผู้ใช้เปิดแอป
- Share Target ผสาน PWA ของคุณเข้าสู่ OS share sheet เพื่อให้ผู้ใช้แชร์รูปภาพ ลิงก์ และข้อความเข้ามาในแอปโดยตรง
- Periodic Background Sync ทำให้เนื้อหาสดใหม่สำหรับครั้งต่อไปที่ผู้ใช้จะเปิดแอป แม้อุปกรณ์จะ offline ก่อนหน้านี้
สิ่งที่โมดูลนี้ครอบคลุม
หัวข้อที่มีชื่อว่า “สิ่งที่โมดูลนี้ครอบคลุม”- ภาพรวม (หน้านี้) — ตารางความสามารถและภาพรวม permissions
- Notifications — Notifications API: ขอ permission, แสดง notification จากหน้าเพจและจาก service worker, จัดการ
notificationclick - Push API — push แบบ end-to-end: VAPID keys, การ subscribe, ส่ง subscription ไปยัง server, push event ใน SW
- Badging and Share Target —
navigator.setAppBadge,share_targetใน manifest และnavigator.share - Periodic Background Sync — ลงทะเบียน periodic sync, จัดการ
periodicsyncevent และข้อจำกัดต่างๆ
เรื่องของ permissions
หัวข้อที่มีชื่อว่า “เรื่องของ permissions”API ส่วนใหญ่ต้องการให้ผู้ใช้ อนุญาตอย่างชัดเจน กฎทองคือ:
ขอ permission ในบริบทที่เหมาะสม — หลังจากผู้ใช้สมัครรับ notification, สั่งซื้อเสร็จ, หรือแตะ “เปิดการแจ้งเตือน” อย่าขอตั้งแต่โหลดหน้าเพจครั้งแรก