Sử dụng nội dung web trong ứng dụng Android

Là nhà phát triển, Android cho phép bạn tận dụng sức mạnh của web trong ứng dụng của mình, nhờ đó, bạn có thể hưởng lợi từ tính linh hoạt và hiệu quả của việc hiển thị một số loại nội dung nhất định.

Điều này cho phép bạn tích hợp liền mạch nội dung web hiện có vào ứng dụng Android gốc, chẳng hạn như hiển thị nguồn cấp tin tức, hiển thị hướng dẫn tương tác, hiển thị quảng cáo hoặc thậm chí lưu trữ một trò chơi nhỏ mà không cần tạo mọi thứ từ đầu. Hãy coi đó là một cửa sổ truy cập Internet từ trong ứng dụng. Có hai cách để nhúng nội dung web vào ứng dụng:

  • WebView: Hiển thị nội dung web mà bạn kiểm soát cùng dòng khi bạn muốn có mức độ linh hoạt cao trong việc tuỳ chỉnh hoặc cập nhật giao diện người dùng.
  • Thẻ tuỳ chỉnh: Một trải nghiệm duyệt web đầy đủ trong ứng dụng, được cung cấp bởi trình duyệt mặc định của người dùng (xem phần hỗ trợ trình duyệt) cho trường hợp người dùng nhấp vào một đường liên kết và bạn muốn giữ họ trong ứng dụng, thay vì chuyển đến một trình duyệt bên ngoài, với hầu hết trải nghiệm duyệt web ngay từ đầu.
Ứng dụng Android mở ra Google Play, trong đó khung hiển thị web chính được đánh dấu bằng hộp màu đỏ. Thẻ Tuỳ chỉnh mở ra trang web Android dành cho nhà phát triển, được làm nổi bật trong hộp màu đỏ.
Hình 1. WebView (bên trái) và Thẻ tuỳ chỉnh (bên phải) được viền màu đỏ.

Tại sao nên nhúng Nội dung web?

  • Hiệu quả: Sử dụng lại mã hiện có trên trang web của bạn. Xây dựng dựa trên nội dung và công nghệ web hiện có.
  • Tích hợp: Tận dụng nội dung bên ngoài của các nhà cung cấp bên thứ ba, chẳng hạn như Nội dung nghe nhìn, Quảng cáo, trong ứng dụng của bạn.
  • Linh hoạt: Cập nhật nội dung một cách linh động mà không bị ràng buộc bởi giao diện người dùng được xác định trước hoặc không cần phát hành bản cập nhật ứng dụng.

Khi nào nên sử dụng nội dung web?

Có 3 trường hợp sử dụng chính để sử dụng Web trong ứng dụng Android:

1. Nhúng nội dung web vào ứng dụng làm nội dung chính hoặc nội dung hỗ trợ: Sử dụng WebView

  • Hiển thị nội dung web của riêng bạn cùng dòng dưới dạng trải nghiệm chính khi bạn muốn có mức độ linh hoạt cao trong việc tuỳ chỉnh hoặc cập nhật giao diện người dùng.
  • Hiển thị nội dung khác như quảng cáo, các điều khoản và quy định pháp lý hoặc nội dung khác của bên thứ ba cùng dòng hoặc dưới dạng cửa sổ trong trải nghiệm ứng dụng của bạn.
Ứng dụng Android mở ra Google Play, trong đó khung hiển thị web chính được đánh dấu bằng hộp màu đỏ Ứng dụng Android mở ra với văn bản hỗ trợ bên trong một hộp màu đỏ.
Hình 2. Nội dung web được nhúng trong ứng dụng với WebView làm nội dung chính (bên trái) và nội dung hỗ trợ (bên phải).

2. Duyệt web trong ứng dụng bằng Thẻ tuỳ chỉnh hoặc WebView cho các trường hợp sử dụng nâng cao hơn

  • Có trải nghiệm duyệt web đầy đủ trong ứng dụng khi người dùng nhấp vào một đường liên kết và bạn muốn giữ họ trong ứng dụng, thay vì chuyển đến trình duyệt bên ngoài.
    • Lưu ý: Đối với các thiết bị màn hình lớn như máy tính bảng và thiết bị có thể gập lại, có thêm một số tuỳ chọn để giúp ứng dụng tận dụng không gian bổ sung:
    • Ứng dụng có thể mở đường liên kết web ở chế độ chia đôi màn hình bằng cách khởi chạy trải nghiệm nhiều cửa sổ liền kề. Điều này cho phép người dùng làm nhiều việc cùng một lúc giữa ứng dụng và trình duyệt. HOẶC
    • Thẻ tuỳ chỉnh có một tuỳ chọn bảng điều khiển bên có thể mở trong cùng một việc cần làm, nhưng bên cạnh nội dung ứng dụng hiện có của bạn.
  • Thẻ tuỳ chỉnh được cung cấp bởi trình duyệt mặc định của người dùng, đối với những trình duyệt hỗ trợ Thẻ tuỳ chỉnh.
    • Mặc dù có thể sử dụng WebView và cung cấp trải nghiệm duyệt web trong ứng dụng có thể tuỳ chỉnh cao, nhưng bạn nên sử dụng Thẻ tuỳ chỉnh để có trải nghiệm trình duyệt ngay từ đầu và chuyển đổi liền mạch khi người dùng muốn mở một đường liên kết web trong trình duyệt.
Trang web có đường liên kết trong ứng dụng trong hộp màu đỏ ở bên trái và trình duyệt trong ứng dụng hiển thị ở bên phải.
Hình 3. Nhấp vào một đường liên kết trong ứng dụng (bên trái) và mở trình duyệt trong ứng dụng (bên phải).

3. Luồng đăng nhập hoặc xác thực trong ứng dụng của bạn

Phương pháp được đề xuất của Android là tạo quy trình đăng nhập hoặc xác thực bằng Trình quản lý thông tin xác thực. Nếu bạn thấy mình vẫn cần sử dụng Web nhúng cho những trải nghiệm này, hãy làm theo hướng dẫn sau:

  • Một số ứng dụng sử dụng WebView để cung cấp quy trình đăng nhập cho người dùng, bao gồm cả việc sử dụng tên người dùng và khoá truy cập (hoặc mật khẩu) dành riêng cho ứng dụng của bạn. Điều này cho phép nhà phát triển hợp nhất các quy trình xác thực trên các nền tảng.
  • Khi liên kết đến một nhà cung cấp danh tính hoặc trải nghiệm đăng nhập của bên thứ ba, chẳng hạn như "Đăng nhập bằng…", bạn nên sử dụng Thẻ tuỳ chỉnh. Việc chạy Thẻ tuỳ chỉnh sẽ đảm bảo thông tin đăng nhập của người dùng vẫn được bảo vệ và tách biệt với trang web của bên thứ ba.

Để biết thêm thông tin về cách tận dụng WebView để xác thực, hãy xem bài viết Xác thực người dùng bằng WebView. Để chạy Thẻ tuỳ chỉnh, hãy xem phần Tổng quan về Thẻ tuỳ chỉnh của Android.

Trường đăng nhập trong ứng dụng có WebView ở bên trái. Trang đăng nhập của bên thứ ba có Thẻ tuỳ chỉnh ở bên phải.
Hình 4. Trường đăng nhập trong ứng dụng (bên trái) và trang đăng nhập của bên thứ ba được mở trong Thẻ tuỳ chỉnh (bên phải).