2012-09-21 4 views
2

웹킷은 웹 브라우저에서 HTML 콘텐츠를 표시하는 데 사용되는 레이아웃 엔진이라는 것을 알고 있습니다. 나는 Webkit ports을보고 안드로이드 관련 물건을 발견하지 못했습니다. 또한 WebView 클래스의 Android 소스 폴더를 살펴 보았지만 Webview가 Webkit과 어떤 관련이 있는지 알 수 없습니다.Android webview에서 Webkit을 사용하는 방법은 무엇입니까?

웹킷이 Android webview에서 어떻게 사용되는지, 웹킷을 사용자 정의하는 방법을 알고 싶습니다.

나는 또한 (특히 안드로이드에 대한) 처리 레이아웃과 자바 스크립트

정말 도움이 필요하기위한 스레드 풀을 사용하는 방법, 웹킷에 사용되는 스레딩 메커니즘을 알고 싶어요. 미리 감사드립니다.

UPDATE

내가 webkit package에서 WebView.java, WebViewCore.javaJniUtil.java로 본다. 특히 JniUtil.java에 webcore 및 chromium_net 있습니다

static { 
     System.loadLibrary("webcore"); 
     System.loadLibrary("chromium_net"); 
} 

가? 관련이 있습니까 webkit source?

+0

1) Android webviews는 Webkit을 사용합니다. 문서의 세 번째 문장은 "WebKit 렌더링 엔진을 사용합니다 ..."라고 시작합니다. 또한 클래스 이름은 android.webkit.WebView입니다. 2) 웹킷을 사용자 정의하여 무엇을 의미하는지 확신 할 수 없습니까? 3) Webkit은 스레드를 내부적으로 사용하지만 걱정할 필요가 없으며 웹 작업자와 자바 스크립트의 스레딩에 액세스 할 수 없습니다 (아직). [답이 아니라는 점은 내가 정말로이 답변을 듣고 싶지 않기 때문이며, 귀하의 질문도 다소 모호합니다. 목표에 대해 좀 더 구체적으로 생각해보십시오.] – jrajav

+0

@Kiyura에게 감사드립니다. 1) 안드로이드 webview는 Webkit을 사용합니다.하지만 안드로이드 소스를 볼 때 웹킷과 관련이 없기 때문에 안드로이드 용 웹킷/포트를 알고 싶습니다. 2) HTML을 렌더링하고 자바 스크립트를 처리하는 방식을 사용자 정의하려고합니다. 3) 스레드 풀의 최대 스레드 수와 같은 스레드 동작을 변경할 수 있습니까? – onmyway133

+0

이것에 대해 모르겠다. 죄송합니다. 자신 만의 Webkit 기반 브라우저를 작성하면 더 많은 행운을 누릴 수 있습니다. – jrajav

답변

9

다음 사진 : 안드로이드 아키텍처 - 라이브러리 층에있는 http://developer.android.com/images/system-architecture.jpg

웹킷. 웹킷 소스는 c/C++에 의해 개발되었습니다.

나는 android webview가 jni (java native interface)를 사용하여 webkit에 연결한다고 생각합니다. 안드로이드 소스 (C++ 부분)를 볼 수 있습니다. 나는 해결책을 거기에서 생각한다.

편집 : 당신은 클래스 android.webkit.WebViewCore 볼 수 있습니다 정적 생성자에 :

static { 
    // Load libwebcore and libchromium_net during static initialization. 
    // This happens in the zygote process so they will be shared read-only 
    // across all app processes. 
    try { 
     System.loadLibrary("webcore"); 
     System.loadLibrary("chromium_net"); 
    } catch (UnsatisfiedLinkError e) { 
     Log.e(LOGTAG, "Unable to load native support libraries."); 
    } 
} 

난 당신이 webcore & chromium_net (안드로이드 소스 C++)

업데이트에서 찾을 수 있다고 생각 : 난을 찾기 링크 jni of android webkit

+0

고맙습니다. – onmyway133

관련 문제