2012-12-14 4 views
2

이미지보기, 텍스트보기 및 웹보기와 같은 일부 구성 요소가 포함 된 사용자 지정 목록보기를 사용하고 있습니다. 데이터가 고정되어 있지 않고 모든 항목을 클릭 한 후에 변경되기 때문에 목록보기를 사용하고 있습니다. 그래서 동적 인 데이터 때문에리스트 뷰를 사용하고 있습니다. BaseAdapter를 사용하고 있습니다.Android Webview에서 Javascript를 미리로드

WebView에서 일부 수학 표현식이 표시됩니다. 내가 로컬 자바 스크립트가 필요합니다 : 모두 잘 작동하지만 WebView에서 Javascript를로드하는 데 약 4 ~ 5 초가 소요됩니다. 그런 다음 렌더링을 시작하므로 출력을 표시하는 총 시간은 5 ~ 6 초입니다.

이 시간을 줄이려고합니다. WebView에서 Javascript를 미리로드 할 수있는 방법이 있습니까?

매번 GetView() 메서드는 WebView 및 기타 구성 요소의 새 인스턴스를 생성하므로 매번 자바 스크립트가로드됩니다.

미리로드 된 Javascript Webview를 사용할 수있는 방법이 있습니까?

답변

0

웹 뷰를 사용하지 않으려면 성능을 향상 시키려면 JAVA/Android 라이브러리를 사용해야한다고 생각합니다. MathML and Java

0

그나마 당신이 목록보기가 동적으로 생성 된 HTML 페이지를 캐싱 방지 할 수 있습니다 스크롤 할 때 페이지를로드하는 초기 지연하지만 이후의 지연에 대한 해결책을 가지고 : 여기 은 수학적 표현의 문제를 해결하는 주제입니다 js 님.

각 결과 (HTML 결과 페이지)를 고유 한 ID (렌더링 될 결과를 기반으로 생성 됨)와 연관시킬 수 있고 hashmap 또는 lru 캐시에서 동적으로 생성 된 html 페이지를 캐시 할 수 있습니다 (onPageFinished 콜백 후 완전히 생성 된 페이지에 액세스 할 수 있음) 이 이드를 상대로 목록이 위 또는 아래로 스크롤 될 때 js로 동적으로 페이지를 만드는 대신, 생성 된 캐시 된 html 페이지 (현재 정적 페이지)를 가져 와서 정적 페이지 만로드 할 수 있습니다. 이렇게하면 페이지를로드하고 배터리를 절약하는 데 걸리는 지연이 줄어 듭니다.

관련 문제