Dưới đây là những gì bạn cần phải biết:
- Thuộc tính
id
của tệp kê khai cho phép bạn chỉ định một mã nhận dạng duy nhất cho PWA. - Thuộc tính
protocol_handlers
cho phép bạn tự động đăng ký PWA làm trình xử lý giao thức khi cài đặt. - Bản dùng thử theo nguyên gốc gợi ý mức độ ưu tiên cho phép bạn chỉ định mức độ ưu tiên tìm nạp để tải tài nguyên xuống.
- Bạn có thể buộc phiên bản Chrome thành 100 để kiểm thử cách mã của bạn phản ứng với số phiên bản gồm ba chữ số.
- Tất cả video từ Hội nghị nhà phát triển Chrome đều có trên mạng.
- Và còn nhiều tính năng khác.
Tôi là Pete LePage, cuối cùng cũng quay video trong phòng thu, hãy cùng tìm hiểu những tính năng mới dành cho nhà phát triển trong Chrome 96.
Tệp kê khai id
cho PWA
Khi người dùng cài đặt một PWA, trình duyệt cần có cách để xác định riêng ứng dụng đó.
Tuy nhiên, cho đến gần đây, thông số kỹ thuật tệp kê khai ứng dụng web chưa chỉ định cách xác định PWA, để trình duyệt quyết định và dẫn đến nhiều cách triển khai.
Trong một số trình duyệt, start_url
được sử dụng, trong khi ở một số trình duyệt khác, đường dẫn đến tệp kê khai được sử dụng.
Điều đó khiến bạn không thể thay đổi bất kỳ trường nào trong số đó mà không làm gián đoạn trải nghiệm cài đặt. Giờ đây, bạn có thể sử dụng thuộc tính id
không bắt buộc mới để xác định rõ giá trị nhận dạng dùng cho PWA.
Việc thêm thuộc tính id
vào tệp kê khai sẽ xoá phần phụ thuộc trên start_url
hoặc vị trí của tệp kê khai và cho phép cập nhật các trường đó.
{
...
id: "/?homescreen=1",
start_url: "/?homescreen=1",
...
}
Tính năng hỗ trợ thuộc tính id
sẽ xuất hiện trên các trình duyệt dựa trên Chromium dành cho máy tính từ Chrome 96. Tính năng hỗ trợ cho thiết bị di động (hiện sử dụng URL tệp kê khai làm mã nhận dạng duy nhất) sẽ ra mắt vào nửa đầu năm 2022.
Nếu đã có một PWA đang hoạt động và muốn thêm id
vào tệp kê khai, bạn cần sử dụng mã nhận dạng do trình duyệt chỉ định. Bạn có thể tìm thấy id
trong ngăn Tệp kê khai của bảng điều khiển Ứng dụng trong Công cụ dành cho nhà phát triển.
Đối với một PWA hoàn toàn mới, bạn có thể đặt id
thành bất kỳ giá trị chuỗi nào bạn muốn, nhưng hãy nhớ rằng bạn sẽ không thể thay đổi giá trị này trong tương lai, vì vậy, hãy chọn thật khôn ngoan.
{
...
id: "SquooshApp",
start_url: "/?homescreen=1",
...
}
Hãy xem bài viết Nhận dạng riêng biệt các PWA bằng thuộc tính mã tệp kê khai ứng dụng web để biết thêm thông tin.
Trình xử lý giao thức URL cho PWA
Ứng dụng web có thể sử dụng navigator.registerProtocolHandler()
để đăng ký làm trình xử lý giao thức. Ví dụ: Gmail có thể đăng ký giao thức mailto
. Sau đó, khi người dùng nhấp vào một đường liên kết có tiền tố mailto:
, Gmail sẽ mở ra, giúp người dùng dễ dàng gửi email.
Kể từ Chrome 96, PWA có thể đăng ký làm trình xử lý giao thức trong quá trình cài đặt. Để thực hiện việc đó cho PWA, hãy thêm thuộc tính protocol_handlers
vào tệp kê khai ứng dụng web, chỉ định protocol
mà bạn muốn xử lý và url
sẽ được mở khi được nhấp vào.
...
"protocol_handlers": [
{
"protocol": "web+tea",
"url": "/tea?type=%s"
},
{
"protocol": "web+coffee",
"url": "/coffee?type=%s"
}
]
}
Có một số hạn chế ở đây và bạn không thể đăng ký bất kỳ giao thức nào. Vì vậy, hãy xem bài viết Đăng ký trình xử lý giao thức URL cho PWA để biết thông tin chi tiết đầy đủ và cách sử dụng cú pháp web+
để tạo giao thức của riêng bạn!
Gợi ý về mức độ ưu tiên (bản dùng thử theo nguyên gốc)
Khi phân tích cú pháp một trang web và bắt đầu khám phá cũng như tải các tài nguyên xuống, chẳng hạn như hình ảnh, tập lệnh hoặc CSS, trình duyệt sẽ chỉ định mức độ ưu tiên tìm nạp cho các tài nguyên đó để cố gắng tối ưu hoá quá trình tải trang. Trình duyệt khá tốt trong việc chỉ định mức độ ưu tiên, nhưng có thể không tối ưu trong mọi trường hợp.
Gợi ý ưu tiên là một tính năng thử nghiệm, được cung cấp dưới dạng bản dùng thử theo nguyên gốc bắt đầu từ Chrome 96 và có thể giúp tối ưu hoá Các chỉ số quan trọng về trang web. Thuộc tính importance
cho phép bạn chỉ định mức độ ưu tiên cho các loại tài nguyên như CSS, phông chữ, tập lệnh, hình ảnh và iframe.
<!-- We don't want a high priority for this above-the-fold image -->
<img src="/not-important.svg" importance="low">
<!-- Initiate an early fetch for a resource, but de-prioritize it -->
<link rel="preload" href="/script.js" as="script" importance="low">
<script>
fetch('https://example.com/', {importance: 'high'})
.then(data => {
// Trigger a high priority fetch
});
</script>
Ví dụ: đây là trang Google Chuyến bay. Hình nền đó là lần sơn nội dung lớn nhất (LCP).
Hãy xem cách tải ứng dụng có và không có gợi ý về mức độ ưu tiên. Khi đặt mức độ ưu tiên thành high
trên hình nền, LCP giảm từ 2,6 giây xuống còn 1,9 giây.
Hãy xem bài viết Tối ưu hoá việc tải tài nguyên bằng API mức độ ưu tiên tìm nạp để biết tất cả thông tin chi tiết, cách đăng ký thử nghiệm theo nguyên gốc và một số ví dụ tuyệt vời về cách API này có thể giúp cải thiện hiệu suất kết xuất.
Mô phỏng Chrome 100 trong chuỗi UA
Đầu năm sau, chúng tôi sẽ ra mắt Chrome 100, phiên bản có số ba chữ số. Bạn nên kiểm tra mọi mã kiểm tra số phiên bản hoặc phân tích cú pháp chuỗi UA để đảm bảo mã đó xử lý được ba chữ số.
Kể từ Chrome 96, sẽ có một cờ mới #force-major-version-to-100
sẽ thay đổi số phiên bản hiện tại thành 100, nhờ đó, bạn có thể đảm bảo mọi thứ hoạt động như mong đợi.
Để biết thông tin chi tiết, hãy xem bài viết Buộc phiên bản lớn của Chrome thành 100 trong chuỗi Tác nhân người dùng.
Hội nghị nhà phát triển Chrome
Hội nghị Chrome Dev đã kết thúc. Tất cả video và nội dung đều có trên mạng. Hãy truy cập trang web của Hội nghị nhà phát triển Chrome. Nếu bạn đã bỏ lỡ bài phát biểu chính hoặc sự kiện phát trực tiếp, hãy xem Danh sách phát CDS trên Kênh YouTube dành cho nhà phát triển Chrome.
Và nhiều tính năng khác!
Tất nhiên còn nhiều tính năng khác.
- Bộ nhớ đệm Quay lại, chuyển tiếp – hoặc
bfcache
– hiện đã có phiên bản ổn định và giúp Chrome phù hợp với cả Firefox và Safari.
Tài liệu đọc thêm
Phần này chỉ đề cập đến một số điểm nổi bật chính. Hãy xem các đường liên kết bên dưới để biết thêm các thay đổi trong Chrome 96.
- Tính năng mới trong Công cụ dành cho nhà phát triển của Chrome (96)
- Các tính năng ngừng hoạt động và bị xoá trong Chrome 96
- Nội dung cập nhật của ChromeStatus.com cho Chrome 96
- Tính năng mới trong JavaScript trong Chrome 96
- Danh sách thay đổi về kho lưu trữ nguồn Chromium
- Lịch phát hành của Chrome
Đăng ký
Để luôn nắm bắt thông tin mới nhất, hãy đăng ký kênh YouTube dành cho nhà phát triển Chrome. Bạn sẽ nhận được thông báo qua email mỗi khi chúng tôi ra mắt video mới.
Tôi là Pete LePage. Ngay khi Chrome 97 được phát hành, tôi sẽ quay lại đây để giới thiệu cho bạn những tính năng mới trong Chrome!