2013-05-26 9 views
8

Sử dụng WebView, một số trang web đưa thời gian rất dài để hoàn thành tải trang (như trong WebViewClient.onPageFinished()) và khi điều đó xảy ra, đây là đặc trưng bởi lỗi Web Console của các loại sau đây:Có cách nào để bắt lỗi giao diện điều khiển Web không?

E/Web Console(1916): Unsafe JavaScript attempt to access frame with URL 
    http://mobile.example.com from frame with URL 
    http://ad.doubleclick.net/adi/interactive.example.com/front_sub;sz=320x50;ord=7340930261983. 
    Domains, protocols and ports must match. 
    05-26 10:44:15.274: E/Web Console(1916): at null:1 

Tôi muốn để có thể nắm bắt các lỗi đó và xử lý chúng theo một cách nào đó. ví dụ. phát hành thư hoặc bất kỳ điều gì có liên quan đến ứng dụng của tôi, việc xử lý thực tế không liên quan tại thời điểm này với câu hỏi cốt lõi:

Có cách nào để bắt các lỗi đó không? tức là theo cách mà ứng dụng của tôi có thể được thông báo?

Lưu ý: Đây không phải là câu hỏi Javascript. Tôi không lập trình một trang web. Tôi đang truy cập trang web hiện có có triển khai ngoài tầm kiểm soát của tôi. Đây là câu hỏi WebView (hiện có trong môi trường Android, nhưng có thể ở trong các môi trường khác có khả năng lưu trữ WebView).

+0

** Lưu ý: ** Đây không phải là câu hỏi về WebView. Đây là "Làm cách nào để đọc nhật ký?" câu hỏi. – ozbek

+0

Một yeilds tìm kiếm nhanh [this] (http://stackoverflow.com/questions/11461650/read-logs-permission-on-jelly-bean-api-16). Tôi sợ, bạn không may mắn với điều này. – ozbek

+3

Tôi không nghĩ rằng OP muốn đọc nhật ký, tôi nghĩ rằng anh ấy muốn bắt lỗi tạo ra thông điệp tường trình và tự xử lý nó. –

Trả lời

5

Bạn có ví dụ về trang web không?

Bạn sẽ có thể ghi đè lên WebChromeClient.onConsoleMessage(ConsoleMessage consoleMessage).

0

Tôi đề nghị ví dụ này được cung cấp bởi google cho Debugging Web Apps

Chú ý rằng chỉ "part1" được hiển thị khi bạn cung cấp một dấu phẩy danh sách các paramters phân định trong console.log chức năng, đây là một đoạn mã javascript để kiểm tra rằng:

console.log("part1","part2"); 

kết quả sẽ là:

part1 -- From line 1 of http://example.js10/test.js