Bạn có thể dùng Công cụ cho nhà phát triển được tích hợp vào trình duyệt Chrome đang chạy trên máy phát triển để kiểm tra và gỡ lỗi từ xa các WebView đang chạy trong ứng dụng của bạn. Để xem hướng dẫn chi tiết về việc gỡ lỗi từ xa cho WebView, hãy xem phần Gỡ lỗi từ xa WebView.
Để tìm hiểu thêm về Công cụ cho nhà phát triển, hãy xem bài viết Tổng quan về Công cụ của Chrome cho nhà phát triển.
Cho phép kết nối từ Công cụ cho nhà phát triển của Chrome
Theo mặc định, WebView của ứng dụng sẽ không cho phép các kết nối từ Công cụ dành cho nhà phát triển của Chrome. Bạn phải bật tính năng gỡ lỗi WebView trong mã của ứng dụng.
- Đảm bảo bạn đã thiết lập để chạy ứng dụng trên thiết bị phần cứng hoặc thiết bị ảo.
- Bật tính năng gỡ lỗi WebView trong mã ứng dụng bằng cách gọi
setWebContentsDebuggingEnabled. Thao tác này thường được thực hiện trong lớpActivityhoặcApplication, nơi WebView được khởi chạy.
Bạn nên bao bọc setWebContentsDebuggingEnabled trong một quy trình kiểm tra có điều kiện để chỉ bật tính năng gỡ lỗi trong các bản dựng phát triển, chứ không phải trong bản phát hành công khai. Chế độ cài đặt này áp dụng cho tất cả WebView trong ứng dụng của bạn.
Trạng thái của cờ debuggable trong tệp kê khai của ứng dụng không ảnh hưởng đến việc gỡ lỗi WebView. Nếu bạn chỉ muốn bật tính năng gỡ lỗi WebView khi cờ debuggable được đặt thành true, hãy kiểm thử cờ này trong thời gian chạy như minh hoạ trong ví dụ sau:
Kotlin
if (applicationInfo.flags and ApplicationInfo.FLAG_DEBUGGABLE != 0) {
WebView.setWebContentsDebuggingEnabled(true)
}
Java
if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE)) {
WebView.setWebContentsDebuggingEnabled(true);
}
Bắt đầu gỡ lỗi WebView
Sau khi bạn bật tính năng gỡ lỗi WebView trong mã ứng dụng và ứng dụng của bạn đang chạy trên một thiết bị thực hoặc Trình mô phỏng Android, hãy kết nối Chrome DevTools với WebView của bạn:
- Mở Chrome trên máy phát triển của bạn.
- Chuyển đến
chrome://inspect. Trên trang
chrome://inspect, hãy nhớ đánh dấu vào mục Phát hiện thiết bị USB. Tìm thiết bị của bạn trong phần Mục tiêu từ xa.
Hình 1. Trang kiểm tra Công cụ cho nhà phát triển của Chrome cho thấy các mục tiêu từ xa có sẵn để gỡ lỗi. Bên dưới tên thiết bị, Chrome liệt kê tất cả WebView đã bật chế độ gỡ lỗi đang chạy trên thiết bị đó, thường được xác định bằng WebView in (WebView trong) theo sau là tên gói của ứng dụng. Tìm WebView mà bạn muốn gỡ lỗi, rồi nhấp vào đường liên kết inspect (kiểm tra).
Bạn sẽ thấy một phiên bản Công cụ cho nhà phát triển mới mở ra mà bạn có thể dùng để kiểm tra WebView.
Nếu bạn đang phân phát nội dung từ một máy chủ web cục bộ trên máy phát triển, hãy xem phần Truy cập vào máy chủ phát triển cục bộ từ WebView để tìm hiểu cách kết nối với máy chủ đó từ thiết bị hoặc trình mô phỏng của bạn. Để khắc phục sự cố, hãy xem phần Gỡ lỗi từ xa các thiết bị Android và Gỡ lỗi từ xa WebView.