2012-02-29 26 views
5

Hy vọng ai đó có thể dẫn tôi đi đúng hướng tại đây. Trang web trên điện thoại di động của tôi khi được xem qua trình duyệt Android gốc tải xuống dưới một giây, có thể là tối đa hai giây. Các trang web tương tự khi đặt trong một webview mất ít nhất 5 giây để tải, mọi lúc, không có vấn đề gì. Sau khi duyệt stackoverflow tìm kiếm một giải pháp, tôi đã thêm:Hiệu suất xem web trên Android, tôi thiếu gì?

webView.getSettings().setRenderPriority(RenderPriority.HIGH); 
    webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); 

//Disable Caching 
    try 
    { 
     Method m = CacheManager.class.getDeclaredMethod("setCacheDisabled", boolean.class); 

     m.setAccessible(true); 

     m.invoke(null, true); 

    } 

    catch (Throwable e) 

    { Log.i("MyApp","Reflection failed", e); 

    } 

Tuy nhiên, tải trang web khá chậm. Tôi biết bản địa là nhanh hơn, nhưng đối với sự linh hoạt tôi đào webview. Có ý tưởng nào ở đây không? Tôi có thiếu cái gì khác không?

Trả lời

6

Vâng ... sau khi dành chút thời gian cho việc này, tôi đã tìm ra thủ phạm. Đang tải các tệp Javascript, không quan trọng nếu đó là tệp cục bộ hoặc tệp từ xa, được rút gọn, v.v., bổ sung thêm chi phí đáng kể vào thời gian tải của chế độ xem web. Ngoài ra, nó không quan trọng nếu kịch bản được đặt trong hoặc trước thẻ, kết quả là khá nhiều như nhau, ít nhất là trong trường hợp của tôi.

Một giải pháp mà tôi đã tìm thấy là sử dụng head.js để tải tập lệnh theo cách không chặn. Nó chắc chắn đã giúp. Dù sao, chỉ cần đăng bài này cho những người khác chạy vào một tình huống tương tự.

+0

cách sử dụng tài liệu hướng dẫn head.js – peter

+0

@peter có thể tìm thấy tại đây: http://headjs.com/ tuy nhiên, tôi hiện đang sử dụng một phương pháp khác để kết hợp và rút gọn tất cả các tệp js/css của tôi. – Eedresha

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