• 28/06 cập nhật đăng ký đăng nhập qua Google & Facebook

Gửi Thông Báo Đến Thiết Bị iOS Safari: Hành Trình Và Kinh Nghiệm Cá Nhân

TenHoshi

Administrator
Staff member
Trusted Uploader
Nếu bạn là một lập trình viên web, có lẽ bạn từng gặp tình huống này: gửi thông báo push đến thiết bị Android qua các công cụ như Firebase Cloud Messaging (FCM) thì thành công, nhưng khi thử với iOS hoặc Safari, thông báo lại không hoạt động. Đây cũng là câu chuyện của mình cách đây hai năm.

Hồi đó, mình đã xây dựng một hệ thống ghi lại push subscription và gửi thông báo push. Tuy nhiên, mình phải tạm gác lại dự án vì không thể gửi thông báo đến thiết bị iOS hoặc trình duyệt Safari. Lý do? Một phần vì Apple yêu cầu một số điều kiện phức tạp để tích hợp thông báo. Cụ thể, bạn cần có tài khoản nhà phát triển Apple (Apple Developer Account) để đăng ký và tích hợp với dịch vụ như Amazon SNS. Dù đã chuẩn bị sẵn 100 USD phí đăng ký, nhưng việc đăng ký tài khoản gặp rất nhiều khó khăn.

image.png

Hành Trình Trở Lại Với Push Notification Cho iOS​

Tháng 10 năm 2024, mình quyết định quay lại nâng cấp hệ thống cũ. Điều kỳ diệu là giờ đây, việc gửi thông báo đến iOS Safari đã trở nên khả thi nhờ những thay đổi mới của Apple.

Hai yếu tố mấu chốt để gửi thông báo đến iOS Safari:

  1. Web App cần được thêm vào màn hình chính: Người dùng cần lưu trang web của bạn như một ứng dụng trên màn hình chính của thiết bị. Đây là điều kiện bắt buộc để kích hoạt khả năng nhận thông báo.
  2. iOS từ phiên bản 16.4 trở lên: Apple đã cập nhật hỗ trợ thông báo push trên Safari và các ứng dụng web từ phiên bản iOS 16.4. Điều này mở ra cơ hội lớn cho các nhà phát triển web.
Giờ đây, hệ thống của mình đã hoạt động trơn tru. Bạn có thể trải nghiệm thử tại https://account.riokupon.com/.

Làm Sao Để Tích Hợp Push Notification Cho iOS Safari?​

Để giúp bạn bắt đầu, dưới đây là các bước tổng quan:

  1. Đăng ký và xử lý Push Subscription: Thêm logic JavaScript để ghi lại subscription của người dùng từ trình duyệt Safari.
  2. Cấu hình máy chủ (Server): Sử dụng các thư viện như web-push để gửi thông báo đến endpoint được đăng ký.
  3. Cấp chứng chỉ cần thiết: Đảm bảo bạn có chứng chỉ APNs (Apple Push Notification service) phù hợp từ tài khoản Apple Developer.
  4. Kiểm tra trên thiết bị thực tế: Thêm trang web vào màn hình chính và kiểm tra thông báo.
Nếu bạn muốn tìm hiểu thêm, tài liệu tại What Web Can Do Today sẽ là một nguồn tham khảo tuyệt vời.

Gửi thông báo đến thiết bị iOS Safari không còn là điều bất khả thi. Dù hành trình này có phần phức tạp, nhưng với các cải tiến từ iOS 16.4, đây là thời điểm tuyệt vời để bạn tối ưu hóa hệ thống của mình. Nếu bạn gặp bất kỳ vấn đề nào, hãy để lại câu hỏi. Mình rất sẵn lòng hỗ trợ!
 

Guest Post 2022

Top