2012-05-29 29 views
8

Tôi đang phát video trong một WebView.Video trong WebView - ApplicationContext và bối cảnh hoạt động

Nếu rò rỉ bộ nhớ là để tránh được, các ApplicationContext (như chống lại một bối cảnh Activity) phải được sử dụng để nhanh chóng WebView (refer to this)

Nếu tôi vượt qua trong ApplicationContextVideoView bên trong WebView nhu cầu để tạo hộp thoại (thường là cho 'Không thể phát video này'), tôi nhận được một BadTokenException (refer to this)

Chúng tôi có dự định quyết định giữa rò rỉ bộ nhớ hoặc ANR tiềm năng không?

Trả lời

0

Tôi kết luận từ các nhận xét ở trên và kiểm tra thêm, rằng sự cố là lỗi trong SDK: khi tạo WebView qua bố cục XML, hoạt động được chuyển thành ngữ cảnh cho WebView chứ không phải ngữ cảnh ứng dụng. Khi kết thúc hoạt động, WebView vẫn giữ tham chiếu đến hoạt động, do đó hoạt động không bị xóa khỏi bộ nhớ. Tôi đã gửi báo cáo lỗi cho điều đó, hãy xem liên kết trong nhận xét ở trên.

webView = new WebView(getApplicationContext()); 
0

Đây chắc chắn là lỗi hoặc thiết kế api thực sự tệ, nó không đưa ra bất kỳ gợi ý nào về lỗi. Tôi tin rằng nhiều nhà phát triển đã gặp phải vấn đề này.

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