Vùng đất

Peter Conn
Peter Conn

Có một lượng lớn hệ sinh thái xung quanh Hoạt động đáng tin cậy trên web và có thể khá khó khăn xem mọi thứ liên quan như thế nào và bạn nên sử dụng những gì. Bài viết này hy vọng giải quyết được vấn đề đó.

Nếu bạn mới sử dụng Hoạt động đáng tin cậy trên web hoặc chỉ đang tìm kiếm bộ công cụ đề xuất nên sử dụng ngay hôm nay, sau đây là những điều bạn cần lưu ý:

  • Bubblewrap: một công cụ NodeJS cho phép nhà phát triển tạo và xây dựng APK Android gói một ứng dụng web tiến bộ (PWA) hiện có. Ứng dụng đã tạo do Hoạt động đáng tin cậy trên web hỗ trợ, nhưng điều này rõ ràng đối với nhà phát triển. Không cần có kinh nghiệm phát triển Android. Xem tài liệu về Bubblewrap để bắt đầu.
  • android-browser-helper: một Thư viện Android đóng gói Hoạt động đáng tin cậy trên web giao thức. Dành cho các nhà phát triển đã quen thuộc với việc phát triển Android và muốn sử dụng nền tảng web đáng tin cậy Hoạt động dưới dạng một trong các Hoạt động trong Ứng dụng Android của họ hoặc thực hiện các tuỳ chỉnh không được hỗ trợ bởi Bubblewrap. Để bắt đầu sử dụng android-browser-helper, hãy xem tài liệubản minh hoạ của chúng tôi.

Phần tiếp theo sẽ tóm tắt ngắn gọn về tất cả các dự án có liên quan với nhau. Cuối cùng (dành cho những người thực sự tò mò) có một mục lịch sử để cho bạn biết chúng tôi đã đến đây bằng cách nào và ở đâu mà chúng tôi dự định thực hiện trong tương lai gần.

Tổng quan về thư viện

Dưới đây là phần tóm tắt một câu, ngắn của từng thư viện mà bạn có thể sẽ sử dụng:

  • androidx.browser, một thư viện Android để tương tác với trình duyệt được cài đặt trên thiết bị.
  • Trình trợ giúp trình duyệt Android, một thư viện xây dựng trên androidx.browser cho Hoạt động đáng tin cậy trên web cung cấp các phương thức thuận tiện và giá trị mặc định hợp lý.
  • Bubblewrap, công cụ tạo Hoạt động đáng tin cậy trên web từ PWA mà không cần chạm vào bất kỳ Java nào .

Ngoài ra, từng thư viện/công cụ sau đây sẽ thay thế một thư viện/công cụ cũ:

Cập nhật trước đây

Thư viện hỗ trợ Android

Thư viện hỗ trợ Android mở rộng nền tảng Android với các API và khả năng tương thích mới các tính năng AI mới. Thẻ này được chia thành nhiều gói, trong đó Thư viện hỗ trợ thẻ tuỳ chỉnh chứa để tương tác với trình duyệt trên hệ thống của người dùng. Việc phát triển Thư viện hỗ trợ thẻ tuỳ chỉnh chủ yếu được thực hiện trong custom-tabs-client Kho lưu trữ GitHub, với các thay đổi sẽ được ngược dòng trở lại Thư viện hỗ trợ Android.

Thẻ tuỳ chỉnh là một Hoạt động trên Android sử dụng trình duyệt để hiển thị một trang web. Lợi ích chính dành cho nhà phát triển là giao diện này có thể được tuỳ chỉnh giao diện và có một nút đóng để người dùng vẫn nằm trong ứng dụng của nhà phát triển (thay vì rời khỏi ứng dụng và chuyển đến toàn bộ trình duyệt trải nghiệm). Là một API Android nên Thẻ tuỳ chỉnh có thể được mọi trình duyệt hỗ trợ và sẽ dùng thẻ mặc định của người dùng trình duyệt (mặc dù nhà phát triển có thể ghi đè tuỳ chọn này).

Hoạt động đáng tin cậy trên web được xây dựng dựa trên các Thẻ tuỳ chỉnh, nên chúng bắt đầu cuộc đời của mình trong thư viện custom-tabs-client. Hoạt động đáng tin cậy trên web sẽ xoá thanh trên cùng của Thẻ tuỳ chỉnh khi người dùng duyệt xem một trang web do nhà phát triển ứng dụng. Điều này mở ra cơ hội tích hợp liền mạch trang web của bạn trong một ứng dụng Android gốc và có thể được dùng để tạo các ứng dụng mà trong đó tất cả chức năng đều do web cung cấp.

AndroidX

Thư viện hỗ trợ Android sau đó được đổi tên thành AndroidX, là một phần của có tên là JetPack nhằm cải thiện trải nghiệm của nhà phát triển. Do đó, các Thẻ tuỳ chỉnh và Hoạt động đáng tin cậy trên web phải chuyển từ Thư viện hỗ trợ thẻ tuỳ chỉnh sang androidx.browser mới.

Một số mã mà chúng tôi đã viết trong tab-tabs-client phù hợp với thư viện Trusted Các lớp của trình trợ giúp Hoạt động trên web, nhưng không dành cho API Android. Mã xử lý việc kiểm tra phiên bản Chrome đã lỗi thời và nhắc người dùng cập nhật hoặc đưa ra quyết định về cách lưu trữ dữ liệu không thể chuyển sang AndroidX. Do đó, chúng tôi đã tạo một thư viện thay thế để chứa các phần của custom-tabs-client không thể truy cập androidx.browser và do đó Trình trợ giúp trình duyệt Android đã ra đời.

Trình trợ giúp trình duyệt Android được tạo để chứa mã có thể dành riêng cho các trình duyệt (không phải chỉ Chrome, chúng tôi sẵn sàng viết mã dành riêng cho các trình duyệt khác) và có thể đưa ra quyết định cụ thể mà các thư viện không nên. Chúng tôi đã tận dụng cơ hội này để phân tách vai trò của hai thư viện này nói chung:

  • androidx.browser chứa các thành phần cơ bản để tương tác với các trình duyệt trên lên hệ thống của người dùng.
  • Trình trợ giúp trình duyệt Android chứa các cách triển khai mặc định hợp lý và thuận tiện cho việc sử dụng.

Tự thân khởi nghiệp

Các nhà phát triển là những người bận rộn, có nhiều việc phải làm và thời hạn để đáp ứng yêu cầu. Để giúp làm việc này, chúng tôi đã tạo ra hai công cụ để cho phép người dùng tự khởi động Hoạt động đáng tin cậy trên web của họ.

Dự án đầu tiên (và lâu đời nhất) là svgomg-twa, một Dự án Android do GitHub lưu trữ nhằm khởi chạy một Hoạt động đáng tin cậy trên web. Ban đầu, dự án này được thiết kế là một dự án minh hoạ và đã được cải tiến thành một mẫu. Người dùng có thể sao chép kho lưu trữ đó và sửa đổi tệp build.gradle để trỏ đến trang web của riêng họ. tạo và tạo một Hoạt động đáng tin cậy trên web mà không cần chạm đến bất kỳ mã Java nào. (Để xác minh được Đường liên kết đến tài sản kỹ thuật số, bạn sẽ phải nỗ lực nhiều hơn. Vui lòng đọc thêm tại đây.)

svgomg-twa ban đầu dựa vào custom-tabs-client, nhưng sau đó đã chuyển sang Android Trình trợ giúp trình duyệt (và androidx.browser bắc cầu).

Công cụ mới nhất và sáng nhất là Bubblewrap, công cụ Node.js sẽ lấy Ứng dụng web của bạn Tệp kê khai và tạo một Hoạt động đáng tin cậy trên web cho bạn. Đây là cách dễ nhất để tạo Hoạt động đáng tin cậy trên web từ một ứng dụng web tiến bộ (PWA) hiện có mà không cần kiến thức phát triển Android nào.

Tương lai gần

Chúng tôi sẽ ngừng sử dụng svgomg-twa vì hai lý do sau đây:

  • Về cơ bản, Bubblewrap tạo ra một svgomg-twa điền sẵn cho một nhà phát triển. Ứng dụng web thực hiện việc này theo cách có tính tương tác và có thể lấy cấu hình từ tệp kê khai ứng dụng web (tức là PWA có thể đã có).
  • Nếu nhà phát triển muốn tham khảo cách bắt đầu dự án Hoạt động đáng tin cậy trên web của riêng họ từ đầu, họ có thể xem thư mục demo của Trình trợ giúp trình duyệt Android.

Các nhà phát triển mới nên sử dụng Bubblewrap để tạo dự án của họ. Nếu đang sử dụng svgomg-twa và đã thực hiện một số sửa đổi lớn, thì bạn không cần lo lắng tiếp tục làm như vậy nhưng sẽ không nhận được thông tin cập nhật.

Chúng tôi dự định giúp Bubblewrap làm tốt nhất có thể để trường hợp có một tính năng rõ ràng bị thiếu hoặc bạn gặp lỗi, vui lòng tạo vấn đề.