1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "android_webview/lib/main/webview_jni_onload.h"
6 #include "base/android/jni_android.h"
8 // This is called by the VM when the shared library is first loaded.
9 // Most of the initialization is done in LibraryLoadedOnMainThread(), not here.
10 JNI_EXPORT jint
JNI_OnLoad(JavaVM
* vm
, void* reserved
) {
11 // WebView uses native JNI exports; disable manual JNI registration because
12 // we don't have a good way to detect the JNI registrations which is called,
13 // outside of OnJNIOnLoadRegisterJNI code path.
14 base::android::DisableManualJniRegistration();
16 if (base::android::IsManualJniRegistrationDisabled()) {
17 base::android::InitVM(vm
);
19 if (android_webview::OnJNIOnLoadRegisterJNI(vm
))
23 if (!android_webview::OnJNIOnLoadInit()) {
26 return JNI_VERSION_1_4
;