2012-11-13 44 views
7

Gần đây, tôi đã cố gắng tìm (và hy vọng, khắc phục) sự cố trình duyệt Android 2.3 thường xuyên bị ảnh hưởng đến mạng blog của SB Nation. Người dùng sẽ điều hướng đến trang và nó sẽ xuất hiện để tải, và sau đó về khi bạn mong đợi DOM hoàn thành để bắn, trình duyệt xuất hiện để buộc phải đóng và bạn đang bị đá vào màn hình chủ. Điều này không xảy ra trên mỗi lần tải trang, vì vậy nếu bạn mở trình duyệt và thử lại, nó sẽ thường tải tốt.Gỡ lỗi sự cố trình duyệt Android 2.3

Tôi đã tạo lại sự cố nhiều lần trên điện thoại của riêng mình, một chiếc HTC Thunderbolt (2.3.4) cũng như Droid Bionic (2.3.4). Tôi không có kinh nghiệm phát triển Android, nhưng tôi cho rằng việc kết nối trình gỡ rối adb có thể cho tôi một số hiểu biết sâu sắc về nguyên nhân của vấn đề này. Dưới đây là một số các bản ghi của vụ tai nạn tôi đã chiếm được:

(Tôi muốn đăng một số URL vào sản xuất đã gây ra những sự cố này nhưng tôi đã theo giới hạn hai liên kết của tôi.)

Như bạn có thể nhận thấy, tất cả nhật ký HTC khác nhau và các bản ghi Bionic dường như không cung cấp nhiều chi tiết kỹ thuật. Đây là chủ đề chung duy nhất tôi tìm thấy trong tất cả các bản ghi HTC:

D/skia (14225): createPlugin (300,150) screen proportion:(w,h)=(0.813008,0.039288), content ratio:2.000000 mainUrl:http://athleticsnation.local:3000/ 
D/skia (14225): createPlugin F10 typical2 video content (300,150)/(369,3818), url= 

tôi đoán là F10 == Flash 10, nhưng Droid Bionic thậm chí không có cài đặt Flash, vì vậy tôi không tin đó là nguyên nhân.

Dù sao đi chăng nữa, tôi bị mất lý thuyết về những gì đang gây ra những sự cố này. Có cách nào để có được thông tin chính xác hơn về các sự cố này không? Đánh dấu không hợp lệ có thể khiến trình duyệt bị lỗi không? Giới hạn JavaScript? Mọi sự trợ giúp sẽ rất được trân trọng.

+0

Nếu bạn đã chạy các liên kết trên trình mô phỏng đầu ra của logcat (thêm nó vào câu hỏi) là gì. Cũng đừng quên bật console.log() http://stackoverflow.com/questions/5538516/javascript-console-log-on-htc-android-devices-and-adb-logcat –

+0

Trong cả hai trường hợp Trình duyệt bị giết bằng tín hiệu 11 ([Lỗi phân đoạn] (http://en.wikipedia.org/wiki/Segmentation_fault)) có nghĩa là các thư viện Trình duyệt gốc đã làm một cái gì đó giống như 'NullPointerException'. Đó không phải là dự định có thể thông qua đánh dấu xấu và bất kỳ nội dung web nào nhưng vì có đề cập đến các plugin và video có thể là một cái gì đó với video (HTML5?). 'skia' btw là thư viện vẽ/vẽ đồ họa 2d. – zapl

+0

@MorrisonChang Các nỗ lực của tôi để tạo lại sự cố trong trình giả lập 2.3.3 cho đến nay vẫn không thành công. Nếu tôi quản lý để repro ở đó, tôi sẽ đăng một logcat. – clifff

Trả lời

1

Có lẽ giá trị xem xét cho phép vị trí (và xử lý ngoại lệ) xung quanh allowed_geolocation_origins():

Từ HTC bãi:

10: W/contentService (1646): binderDied() vào tên ObserverNode allowed_geolocation_origins

+0

Bắt tốt! Tuy nhiên, tôi không hiểu làm thế nào một trang web sẽ gây ra vấn đề với allowed_geolocation_origins, mà có vẻ là [một phần của API Android lõi.] (Http://developer.android.com/reference/android/provider/Settings. Secure.html) Theo hiểu biết của tôi, chúng tôi không cố gắng sử dụng vị trí địa lý HTML5 hoặc bất kỳ thứ gì trên các trang này, đó là liên kết duy nhất tôi có thể nghĩ đến. Có thể là cá trích đỏ? – clifff

+1

Khó nói - có ít nhất 8 js thư viện đang tải (bao gồm mạng quảng cáo, Twitter, Facebook, Google analytics), số lượng đánh dấu bị hỏng và 4 khung hình ẩn, mỗi khung bao gồm cả các thư viện phức tạp của bên thứ 3. Xem: http://imgur.com/WUKRn và http://imgur.com/7YRPV. – PapaK

+0

Ngay cả khi không có yêu cầu vị trí từ trang của bạn, Trình duyệt phải tuân thủ cài đặt vị trí được phép để thay đổi. Có nghĩa là nó có thể liên quan nhưng nó không phải. Bạn nhận được cảnh báo Binder chết khi một quá trình bị rơi mà đã được kết nối thông qua một chất kết dính đến một quá trình khác. Tôi muốn nói rằng cảnh báo là kết quả của sự cố, không phải là lý do – zapl

Các vấn đề liên quan