Ứng dụng web tiến bộ (PWA) là một mẫu để xây dựng các ứng dụng hiện đại, có thể cài đặt bằng công nghệ web cho thiết bị di động và máy tính.
Một trong những tiêu chí để xây dựng trải nghiệm web hiện đại, và không phải là PWA, là ứng dụng phải tiếp tục hoạt động ngay cả khi thiết bị không có kết nối mạng. Điều đó có nghĩa là không có màn hình Chrome Dino nếu người dùng mất quyền truy cập mạng trên thiết bị của họ!
Mục tiêu của tất cả các tiêu chí về PWA là giúp đảm bảo người dùng có trải nghiệm chất lượng cao, cạnh tranh với ứng dụng khi duyệt web. Chrome thực hiện các bước kiểm tra theo tiêu chí về PWA trước khi bật tính năng cài đặt cho PWA.
Chỉ những ứng dụng đáp ứng tất cả các tiêu chí cài đặt cơ bản của Ứng dụng web tiến bộ (bao gồm cả khả năng hỗ trợ chế độ ngoại tuyến) mới có thể được cài đặt trên thiết bị từ Chrome.
Logic phát hiện ngoại tuyến trước đó
Việc xác minh tính năng hỗ trợ ngoại tuyến đã là một phần của tiêu chí về khả năng cài đặt PWA trong nhiều năm. Cho đến gần đây, Chrome không có khả năng mô phỏng các yêu cầu thông qua trình chạy dịch vụ, vì vậy, không thể kiểm tra đầy đủ hành vi ngoại tuyến chính xác.
Điều đó có nghĩa là Chrome không thể xác thực xem trình xử lý sự kiện fetch
có trả về tài nguyên hợp lệ bằng HTTP 200 trong quá trình kiểm tra khi không có mạng hay không.
Chrome chỉ kiểm tra xem trình chạy dịch vụ có thực sự có trình xử lý fetch
hay không.
Cập nhật logic phát hiện khi không có kết nối Internet
Chrome 89 đã thêm khả năng chạy các yêu cầu ngoại tuyến được mô phỏng thông qua trình chạy dịch vụ, cho phép cải thiện logic phát hiện ngoại tuyến để phản ánh tốt hơn tính năng hỗ trợ ngoại tuyến thực tế của ứng dụng.
Chúng tôi đã lên kế hoạch sử dụng tính năng mới này để đảm bảo rằng PWA cung cấp một trang hợp lệ khi ở chế độ ngoại tuyến, nhưng đã tạm hoãn các kế hoạch đó. Quy trình kiểm tra khả năng cài đặt sẽ tiếp tục vượt qua nếu trang có trình chạy dịch vụ bao gồm trình xử lý sự kiện fetch
.
Điều này có ý nghĩa gì đối với nhà phát triển?
Mặc dù hiện không cần thực hiện thay đổi nào, nhưng bạn nên cung cấp trải nghiệm ngoại tuyến vì chúng tôi dự kiến sẽ sử dụng logic đã cập nhật để kiểm tra trang hợp lệ vào một thời điểm nào đó trong tương lai.
Bạn có thể quyết định loại trải nghiệm ngoại tuyến mà bạn muốn cung cấp. Ở một đầu của phổ này là trải nghiệm ngoại tuyến có đầy đủ chức năng. Điều này có nghĩa là lưu tất cả tài nguyên và dữ liệu cần thiết vào bộ nhớ đệm trước và đồng bộ hoá dữ liệu với máy chủ khi người dùng truy cập lại. Việc lưu các tài nguyên vào bộ nhớ đệm cũng sẽ giúp cải thiện các chỉ số quan trọng chính của trang web vì bạn không cần phải tải các tài nguyên xuống từ mạng mỗi khi cần. Ở đầu bên kia của phổ là trang dự phòng tuỳ chỉnh khi không có mạng.
Cảnh báo xuất hiện trong thẻ Vấn đề của công cụ dành cho nhà phát triển sẽ bị xoá trong Chrome 90.