Key points and classes relation
WebViewChromium.java
private void loadUrlOnUiThread
mAwContents.loadUrl(loadUrlParams);
mAwContents = new AwContents
AwContents.java public void loadUrl(LoadUrlParams params) mContentViewCore.loadUrl(params);
------------------------------------- JNI
./target/product/togari/obj/GYP/shared_intermediates/ content/jni/ContentViewCore_jni.h android_webview/jni/AwContents_jni.h
AwContents.java <-> aw_contents.cc (also defines AwContents)
ContentViewCore.java<->content_view_core_impl.cc
----------------------- org. chromium. android_webviewexternal/chromium_org/android_webview/java/src/org/chromium/android_webview/ AwContents.java
mNativeAwContents = nativeInit(mBrowserContext); [chromium_org/android_webview/native/aw_contents.cc, static jint Init, return reinterpret_cast< jint>( new AwContents( web_contents. Pass())] public AwContents(…)
[chromium_org/content/browser/web_contents/web_contents_impl.cc]
content::WebContents web_contents_(web_contents.Pass()
int nativeWebContents = nativeGetWebContents(mNativeAwContents); return web_contents_;
contentViewCore.initialize(…,web_contents_) [chromium_org/content/browser/android/content_view_core_impl.cc,jint Init] ContentViewCoreImpl* view = new ContentViewCoreImpl
chromium_org/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
mNativeContentViewCore = nativeInit(…web_contents_) private ContentViewCore mContentViewCore = createAndInitializeContentViewCore(web_contents_ …) contentViewCore = new ContentViewCore(containerView.getContext());