- Ứng dụng web tiến bộ sắp ra mắt trên máy tính
- API cảm biến chung giúp bạn dễ dàng truy cập vào các cảm biến của thiết bị như gia tốc kế, con quay hồi chuyển và nhiều cảm biến khác.
- Và
BigInt
giúp việc xử lý các số nguyên lớn trở nên dễ dàng hơn.
Và còn nhiều tính năng khác!
Tôi là Pete LePage. Hãy cùng tìm hiểu có gì mới dành cho nhà phát triển trong Chrome 67!
Bạn muốn xem danh sách đầy đủ các thay đổi? Hãy xem danh sách thay đổi về kho lưu trữ nguồn Chromium.
PWA dành cho máy tính
Ứng dụng web tiến bộ dành cho máy tính hiện được hỗ trợ trên ChromeOS 67 và chúng tôi đã bắt đầu triển khai hỗ trợ cho Mac và Windows. Sau khi cài đặt, các ứng dụng này sẽ được khởi chạy giống như các ứng dụng khác và chạy trong một cửa sổ ứng dụng mà không có thanh địa chỉ hoặc thẻ. Worker dịch vụ đảm bảo rằng chúng nhanh chóng và đáng tin cậy, trải nghiệm cửa sổ ứng dụng giúp chúng cảm thấy được tích hợp. Đồng thời, các tính năng này tạo ra một trải nghiệm hấp dẫn cho người dùng.
Bước đầu tiên cũng giống như những gì bạn đang làm hiện nay. Tất cả công việc bạn đã thực hiện cho Ứng dụng web tiến bộ hiện tại vẫn áp dụng, bạn chỉ cần cân nhắc một số điểm ngắt bổ sung.
Nếu ứng dụng của bạn đáp ứng các tiêu chí PWA tiêu chuẩn, Chrome sẽ kích hoạt sự kiện beforeinstallprompt
nhưng sẽ không tự động nhắc người dùng. Thay vào đó, hãy lưu sự kiện; sau đó, thêm một số giao diện người dùng (chẳng hạn như nút cài đặt ứng dụng) vào ứng dụng của bạn để cho người dùng biết rằng họ có thể cài đặt ứng dụng của bạn. Sau đó, khi người dùng nhấp vào nút, hãy gọi lời nhắc trên sự kiện đã lưu; sau đó, Chrome sẽ hiển thị lời nhắc cho người dùng. Nếu họ nhấp vào nút thêm, Chrome sẽ thêm PWA của bạn vào kệ và trình chạy của họ.
Hãy xem bài nói chuyện của tôi tại Google I/O, trong đó Jenny và tôi trình bày chi tiết về những điểm cần cân nhắc về kỹ thuật và thiết kế đặc biệt mà bạn cần phải suy nghĩ khi xây dựng ứng dụng web tiến bộ dành cho máy tính.
Nếu bạn muốn bắt đầu chơi bằng tính năng này trên máy Mac hoặc Windows, hãy xem bài đăng đầy đủ về Ứng dụng web tiến bộ trên máy tính để biết thông tin chi tiết về cách bật tính năng hỗ trợ cờ.
API cảm biến chung
Dữ liệu cảm biến được dùng trong nhiều ứng dụng để mang đến trải nghiệm như chơi trò chơi sống động, theo dõi hoạt động thể dục và thực tế tăng cường hoặc thực tế ảo. Dữ liệu này hiện có sẵn cho ứng dụng web bằng cách sử dụng API cảm biến chung.
API này bao gồm một giao diện Cảm biến cơ sở với một tập hợp các lớp cảm biến cụ thể được tạo ở trên cùng. Việc có một giao diện cơ sở sẽ đơn giản hoá quá trình triển khai và quy trình quy cách cho các lớp cảm biến cụ thể. Ví dụ: lớp Con quay hồi chuyển rất nhỏ!
const sensor = new Gyroscope({frequency: 500});
sensor.start();
sensor.onreading = () => {
console.log("X-axis " + sensor.x);
console.log("Y-axis " + sensor.y);
console.log("Z-axis " + sensor.z);
};
Chức năng cốt lõi này được chỉ định bởi giao diện cơ sở và Con quay hồi chuyển chỉ mở rộng giao diện đó bằng 3 thuộc tính đại diện cho vận tốc góc. Chrome phiên bản 67 hỗ trợ gia tốc kế, con quay hồi chuyển, cảm biến hướng và cảm biến chuyển động.
Intel đã tổng hợp một số bản minh hoạ về API cảm biến chung và mã mẫu, đồng thời họ cũng đã cập nhật bài đăng Cảm biến cho web từ tháng 9 với mọi thông tin bạn cần biết.
BigInt
giây
BigInt
là một số nguyên gốc mới trong JavaScript có thể biểu thị số nguyên với độ chính xác tuỳ ý. Bạn không thể biểu thị an toàn mã nhận dạng số nguyên lớn và dấu thời gian có độ chính xác cao dưới dạng Numbers
trong JavaScript, điều này thường dẫn đến lỗi trong thực tế (vì vậy, chúng ta thường biểu thị các số như vậy dưới dạng chuỗi).
let max = Number.MAX_SAFE_INTEGER;
// → 9_007_199_254_740_991
max = max + 1;
// → 9_007_199_254_740_992 - Yay!
max = max + 1;
// → 9_007_199_254_740_992 - Uh, no?
Với BigInt
, chúng ta có thể lưu trữ và thực hiện phép tính số nguyên một cách an toàn mà không bị tràn. Ngày nay, việc xử lý số nguyên lớn thường có nghĩa là chúng ta phải sử dụng một thư viện mô phỏng chức năng giống như BigInt
.
let max = BigInt(Number.MAX_SAFE_INTEGER);
// → 9_007_199_254_740_991n
max = max + 9n;
// → 9_007_199_254_741_000n - Yay!
Khi BigInt
được cung cấp rộng rãi, chúng ta có thể loại bỏ các phần phụ thuộc thời gian chạy này để chuyển sang BigInts
gốc. Việc triển khai mã gốc không chỉ nhanh hơn mà còn giúp giảm thời gian tải, thời gian phân tích cú pháp và thời gian biên dịch vì chúng ta sẽ không phải tải các thư viện bổ sung đó.
Và nhiều tính năng khác!
Tất nhiên, đây chỉ là một vài thay đổi trong Chrome 67 dành cho nhà phát triển, còn rất nhiều thay đổi khác.
API Quản lý thông tin xác thực được hỗ trợ kể từ Chrome 51 và cung cấp một khung để tạo, truy xuất và lưu trữ thông tin xác thực. Việc này được thực hiện thông qua hai loại thông tin xác thực: PasswordCredential
và FederatedCredential
. API xác thực web thêm một loại thông tin xác thực thứ ba, PublicKeyCredential
, cho phép trình duyệt xác thực người dùng bằng một cặp khoá riêng tư/khoá công khai do trình xác thực tạo ra, chẳng hạn như khoá bảo mật, đầu đọc vân tay hoặc bất kỳ thiết bị nào khác có thể xác thực người dùng. Chrome 67 bật API bằng trình xác thực U2F/CTAP 1 qua phương thức truyền tải USB trên máy tính.
Tìm hiểu thêm về tính năng này trong bài đăng Bật tính năng xác thực mạnh bằng WebAuthn của Eiji.
Google I/O đã kết thúc
Nếu bạn không tham dự I/O hoặc có thể đã tham dự nhưng không thấy tất cả các cuộc thảo luận trên web, hãy xem danh sách phát Chrome và Web để nắm bắt mọi thông tin mới nhất về Google I/O!
Tính năng mới trong Công cụ cho nhà phát triển
Hãy nhớ xem bài viết Tính năng mới trong Chrome DevTools để tìm hiểu các tính năng mới trong DevTools của Chrome 67.
Đăng ký
Sau đó, hãy nhấp vào nút đăng ký trên kênh YouTube của chúng tôi. 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 68 được phát hành, tôi sẽ quay lại đây để cho bạn biết những tính năng mới trong Chrome!