2012-02-29 5 views
5

누군가가 나를 올바른 방향으로 이끌 수 있다고 생각합니다. 네이티브 Android 브라우저를 통해 볼 때 내 모바일 사이트는 초당 최대 2 초 내에로드됩니다. 웹 뷰 내에서 동일한 사이트가로드 될 때마다, 매번 최소한 5 초가 걸립니다. 해결책을 모색 유래를 검색 한 후, 내가 추가 한 :Android webview 성능, 무엇이 누락 되었습니까?

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); 

    } 

꽤 느린 사이트로드. 네이티브가 더 빠르다는 것을 압니다. 그러나 융통성을 위해 저는 webview를 파헤칩니다. 어떤 아이디어가 있습니까? 나는 다른 것을 놓치고 있니?

답변

6

글쎄 ... 나는이 범인을 찾은 시간이 조금있다. Javascript 파일을로드하는 것은 로컬 파일이나 원격 파일, 축소 된 파일 등의 경우 중요하지 않습니다. 따라서 웹뷰의로드 시간에 상당한 오버 헤드가 추가됩니다. 또한 스크립트가 태그 앞에 또는 앞에 놓여도 상관 없습니다. 적어도 제 경우에는 결과가 거의 동일합니다.

하나의 해결책은 head.js을 사용하여 스크립트를 비 차단 방식으로로드하는 것입니다. 확실히 도움이되었습니다. 어쨌든 비슷한 상황에 처한 사람들을 위해이 글을 올리십시오.

+0

head.js 사용 방법 – peter

+0

@peter 설명서는 http://headjs.com/에서 찾을 수 있습니다. 그러나 이제는 모든 js/css 파일을 결합하고 축소하는 또 다른 방법을 사용 중입니다. – Eedresha

관련 문제