Loading core/jni/android_app_NativeActivity.cpp +13 −30 Original line number Diff line number Diff line Loading @@ -40,6 +40,8 @@ #include "nativebridge/native_bridge.h" #include "core_jni_helpers.h" #define LOG_TRACE(...) //#define LOG_TRACE(...) ALOG(LOG_DEBUG, LOG_TAG, __VA_ARGS__) Loading Loading @@ -632,39 +634,20 @@ static const JNINativeMethod g_methods[] = { static const char* const kNativeActivityPathName = "android/app/NativeActivity"; #define FIND_CLASS(var, className) \ var = env->FindClass(className); \ LOG_FATAL_IF(! var, "Unable to find class %s", className); #define GET_METHOD_ID(var, clazz, methodName, fieldDescriptor) \ var = env->GetMethodID(clazz, methodName, fieldDescriptor); \ LOG_FATAL_IF(! var, "Unable to find method" methodName); int register_android_app_NativeActivity(JNIEnv* env) { //ALOGD("register_android_app_NativeActivity"); jclass clazz; FIND_CLASS(clazz, kNativeActivityPathName); GET_METHOD_ID(gNativeActivityClassInfo.finish, clazz, "finish", "()V"); GET_METHOD_ID(gNativeActivityClassInfo.setWindowFlags, clazz, "setWindowFlags", "(II)V"); GET_METHOD_ID(gNativeActivityClassInfo.setWindowFormat, clazz, "setWindowFormat", "(I)V"); GET_METHOD_ID(gNativeActivityClassInfo.showIme, clazz, "showIme", "(I)V"); GET_METHOD_ID(gNativeActivityClassInfo.hideIme, clazz, "hideIme", "(I)V"); return AndroidRuntime::registerNativeMethods( env, kNativeActivityPathName, g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, kNativeActivityPathName); gNativeActivityClassInfo.finish = GetMethodIDOrDie(env, clazz, "finish", "()V"); gNativeActivityClassInfo.setWindowFlags = GetMethodIDOrDie(env, clazz, "setWindowFlags", "(II)V"); gNativeActivityClassInfo.setWindowFormat = GetMethodIDOrDie(env, clazz, "setWindowFormat", "(I)V"); gNativeActivityClassInfo.showIme = GetMethodIDOrDie(env, clazz, "showIme", "(I)V"); gNativeActivityClassInfo.hideIme = GetMethodIDOrDie(env, clazz, "hideIme", "(I)V"); return RegisterMethodsOrDie(env, kNativeActivityPathName, g_methods, NELEM(g_methods)); } } // namespace android core/jni/android_app_backup_FullBackup.cpp +5 −7 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ #include <androidfw/BackupHelpers.h> #include "core_jni_helpers.h" #include <string.h> namespace android Loading Loading @@ -116,15 +118,11 @@ static const JNINativeMethod g_methods[] = { int register_android_app_backup_FullBackup(JNIEnv* env) { jclass clazz = env->FindClass("android/app/backup/BackupDataOutput"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataOutput"); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupDataOutput"); sBackupDataOutput.mBackupWriter = env->GetFieldID(clazz, "mBackupWriter", "J"); LOG_FATAL_IF(sBackupDataOutput.mBackupwriter == NULL, "Unable to find mBackupWriter field in android.app.backup.BackupDataOutput"); sBackupDataOutput.mBackupWriter = GetFieldIDOrDie(env, clazz, "mBackupWriter", "J"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/FullBackup", g_methods, NELEM(g_methods)); return RegisterMethodsOrDie(env, "android/app/backup/FullBackup", g_methods, NELEM(g_methods)); } } core/jni/android_backup_BackupDataInput.cpp +8 −11 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ #include <androidfw/BackupHelpers.h> #include "core_jni_helpers.h" namespace android { Loading Loading @@ -135,17 +137,12 @@ int register_android_backup_BackupDataInput(JNIEnv* env) { //ALOGD("register_android_backup_BackupDataInput"); jclass clazz = env->FindClass("android/app/backup/BackupDataInput$EntityHeader"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataInput.EntityHeader"); s_keyField = env->GetFieldID(clazz, "key", "Ljava/lang/String;"); LOG_FATAL_IF(s_keyField == NULL, "Unable to find key field in android.app.backup.BackupDataInput.EntityHeader"); s_dataSizeField = env->GetFieldID(clazz, "dataSize", "I"); LOG_FATAL_IF(s_dataSizeField == NULL, "Unable to find dataSize field in android.app.backup.BackupDataInput.EntityHeader"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/BackupDataInput", g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupDataInput$EntityHeader"); s_keyField = GetFieldIDOrDie(env, clazz, "key", "Ljava/lang/String;"); s_dataSizeField = GetFieldIDOrDie(env, clazz, "dataSize", "I"); return RegisterMethodsOrDie(env, "android/app/backup/BackupDataInput", g_methods, NELEM(g_methods)); } } core/jni/android_backup_BackupHelperDispatcher.cpp +7 −12 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ #include <sys/uio.h> #include <unistd.h> #include "core_jni_helpers.h" #define VERSION_1_HEADER 0x01706c48 // 'Hlp'1 little endian Loading Loading @@ -227,18 +228,12 @@ static const JNINativeMethod g_methods[] = { int register_android_backup_BackupHelperDispatcher(JNIEnv* env) { jclass clazz = env->FindClass("android/app/backup/BackupHelperDispatcher$Header"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupHelperDispatcher.Header"); s_chunkSizeField = env->GetFieldID(clazz, "chunkSize", "I"); LOG_FATAL_IF(s_chunkSizeField == NULL, "Unable to find chunkSize field in android.app.backup.BackupHelperDispatcher.Header"); s_keyPrefixField = env->GetFieldID(clazz, "keyPrefix", "Ljava/lang/String;"); LOG_FATAL_IF(s_keyPrefixField == NULL, "Unable to find keyPrefix field in android.app.backup.BackupHelperDispatcher.Header"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/BackupHelperDispatcher", g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupHelperDispatcher$Header"); s_chunkSizeField = GetFieldIDOrDie(env, clazz, "chunkSize", "I"); s_keyPrefixField = GetFieldIDOrDie(env, clazz, "keyPrefix", "Ljava/lang/String;"); return RegisterMethodsOrDie(env, "android/app/backup/BackupHelperDispatcher", g_methods, NELEM(g_methods)); } } core/jni/android_content_res_Configuration.cpp +20 −40 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ #include <android_runtime/android_content_res_Configuration.h> #include "android_runtime/AndroidRuntime.h" #include "core_jni_helpers.h" namespace android { static struct { Loading Loading @@ -70,48 +72,26 @@ void android_Configuration_getFromJava( gConfigurationClassInfo.smallestScreenWidthDp); } #define FIND_CLASS(var, className) \ var = env->FindClass(className); \ LOG_FATAL_IF(! var, "Unable to find class " className); #define GET_FIELD_ID(var, clazz, fieldName, fieldDescriptor) \ var = env->GetFieldID(clazz, fieldName, fieldDescriptor); \ LOG_FATAL_IF(! var, "Unable to find field " fieldName); int register_android_content_res_Configuration(JNIEnv* env) { jclass clazz; FIND_CLASS(clazz, "android/content/res/Configuration"); jclass clazz = FindClassOrDie(env, "android/content/res/Configuration"); GET_FIELD_ID(gConfigurationClassInfo.mcc, clazz, "mcc", "I"); GET_FIELD_ID(gConfigurationClassInfo.mnc, clazz, "mnc", "I"); GET_FIELD_ID(gConfigurationClassInfo.locale, clazz, "locale", "Ljava/util/Locale;"); GET_FIELD_ID(gConfigurationClassInfo.screenLayout, clazz, "screenLayout", "I"); GET_FIELD_ID(gConfigurationClassInfo.touchscreen, clazz, "touchscreen", "I"); GET_FIELD_ID(gConfigurationClassInfo.keyboard, clazz, "keyboard", "I"); GET_FIELD_ID(gConfigurationClassInfo.keyboardHidden, clazz, "keyboardHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.hardKeyboardHidden, clazz, "hardKeyboardHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.navigation, clazz, "navigation", "I"); GET_FIELD_ID(gConfigurationClassInfo.navigationHidden, clazz, "navigationHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.orientation, clazz, "orientation", "I"); GET_FIELD_ID(gConfigurationClassInfo.uiMode, clazz, "uiMode", "I"); GET_FIELD_ID(gConfigurationClassInfo.screenWidthDp, clazz, "screenWidthDp", "I"); GET_FIELD_ID(gConfigurationClassInfo.screenHeightDp, clazz, "screenHeightDp", "I"); GET_FIELD_ID(gConfigurationClassInfo.smallestScreenWidthDp, clazz, gConfigurationClassInfo.mcc = GetFieldIDOrDie(env, clazz, "mcc", "I"); gConfigurationClassInfo.mnc = GetFieldIDOrDie(env, clazz, "mnc", "I"); gConfigurationClassInfo.locale = GetFieldIDOrDie(env, clazz, "locale", "Ljava/util/Locale;"); gConfigurationClassInfo.screenLayout = GetFieldIDOrDie(env, clazz, "screenLayout", "I"); gConfigurationClassInfo.touchscreen = GetFieldIDOrDie(env, clazz, "touchscreen", "I"); gConfigurationClassInfo.keyboard = GetFieldIDOrDie(env, clazz, "keyboard", "I"); gConfigurationClassInfo.keyboardHidden = GetFieldIDOrDie(env, clazz, "keyboardHidden", "I"); gConfigurationClassInfo.hardKeyboardHidden = GetFieldIDOrDie(env, clazz, "hardKeyboardHidden", "I"); gConfigurationClassInfo.navigation = GetFieldIDOrDie(env, clazz, "navigation", "I"); gConfigurationClassInfo.navigationHidden = GetFieldIDOrDie(env, clazz, "navigationHidden", "I"); gConfigurationClassInfo.orientation = GetFieldIDOrDie(env, clazz, "orientation", "I"); gConfigurationClassInfo.uiMode = GetFieldIDOrDie(env, clazz, "uiMode", "I"); gConfigurationClassInfo.screenWidthDp = GetFieldIDOrDie(env, clazz, "screenWidthDp", "I"); gConfigurationClassInfo.screenHeightDp = GetFieldIDOrDie(env, clazz, "screenHeightDp", "I"); gConfigurationClassInfo.smallestScreenWidthDp = GetFieldIDOrDie(env, clazz, "smallestScreenWidthDp", "I"); return 0; Loading Loading
core/jni/android_app_NativeActivity.cpp +13 −30 Original line number Diff line number Diff line Loading @@ -40,6 +40,8 @@ #include "nativebridge/native_bridge.h" #include "core_jni_helpers.h" #define LOG_TRACE(...) //#define LOG_TRACE(...) ALOG(LOG_DEBUG, LOG_TAG, __VA_ARGS__) Loading Loading @@ -632,39 +634,20 @@ static const JNINativeMethod g_methods[] = { static const char* const kNativeActivityPathName = "android/app/NativeActivity"; #define FIND_CLASS(var, className) \ var = env->FindClass(className); \ LOG_FATAL_IF(! var, "Unable to find class %s", className); #define GET_METHOD_ID(var, clazz, methodName, fieldDescriptor) \ var = env->GetMethodID(clazz, methodName, fieldDescriptor); \ LOG_FATAL_IF(! var, "Unable to find method" methodName); int register_android_app_NativeActivity(JNIEnv* env) { //ALOGD("register_android_app_NativeActivity"); jclass clazz; FIND_CLASS(clazz, kNativeActivityPathName); GET_METHOD_ID(gNativeActivityClassInfo.finish, clazz, "finish", "()V"); GET_METHOD_ID(gNativeActivityClassInfo.setWindowFlags, clazz, "setWindowFlags", "(II)V"); GET_METHOD_ID(gNativeActivityClassInfo.setWindowFormat, clazz, "setWindowFormat", "(I)V"); GET_METHOD_ID(gNativeActivityClassInfo.showIme, clazz, "showIme", "(I)V"); GET_METHOD_ID(gNativeActivityClassInfo.hideIme, clazz, "hideIme", "(I)V"); return AndroidRuntime::registerNativeMethods( env, kNativeActivityPathName, g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, kNativeActivityPathName); gNativeActivityClassInfo.finish = GetMethodIDOrDie(env, clazz, "finish", "()V"); gNativeActivityClassInfo.setWindowFlags = GetMethodIDOrDie(env, clazz, "setWindowFlags", "(II)V"); gNativeActivityClassInfo.setWindowFormat = GetMethodIDOrDie(env, clazz, "setWindowFormat", "(I)V"); gNativeActivityClassInfo.showIme = GetMethodIDOrDie(env, clazz, "showIme", "(I)V"); gNativeActivityClassInfo.hideIme = GetMethodIDOrDie(env, clazz, "hideIme", "(I)V"); return RegisterMethodsOrDie(env, kNativeActivityPathName, g_methods, NELEM(g_methods)); } } // namespace android
core/jni/android_app_backup_FullBackup.cpp +5 −7 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ #include <androidfw/BackupHelpers.h> #include "core_jni_helpers.h" #include <string.h> namespace android Loading Loading @@ -116,15 +118,11 @@ static const JNINativeMethod g_methods[] = { int register_android_app_backup_FullBackup(JNIEnv* env) { jclass clazz = env->FindClass("android/app/backup/BackupDataOutput"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataOutput"); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupDataOutput"); sBackupDataOutput.mBackupWriter = env->GetFieldID(clazz, "mBackupWriter", "J"); LOG_FATAL_IF(sBackupDataOutput.mBackupwriter == NULL, "Unable to find mBackupWriter field in android.app.backup.BackupDataOutput"); sBackupDataOutput.mBackupWriter = GetFieldIDOrDie(env, clazz, "mBackupWriter", "J"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/FullBackup", g_methods, NELEM(g_methods)); return RegisterMethodsOrDie(env, "android/app/backup/FullBackup", g_methods, NELEM(g_methods)); } }
core/jni/android_backup_BackupDataInput.cpp +8 −11 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ #include <androidfw/BackupHelpers.h> #include "core_jni_helpers.h" namespace android { Loading Loading @@ -135,17 +137,12 @@ int register_android_backup_BackupDataInput(JNIEnv* env) { //ALOGD("register_android_backup_BackupDataInput"); jclass clazz = env->FindClass("android/app/backup/BackupDataInput$EntityHeader"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataInput.EntityHeader"); s_keyField = env->GetFieldID(clazz, "key", "Ljava/lang/String;"); LOG_FATAL_IF(s_keyField == NULL, "Unable to find key field in android.app.backup.BackupDataInput.EntityHeader"); s_dataSizeField = env->GetFieldID(clazz, "dataSize", "I"); LOG_FATAL_IF(s_dataSizeField == NULL, "Unable to find dataSize field in android.app.backup.BackupDataInput.EntityHeader"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/BackupDataInput", g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupDataInput$EntityHeader"); s_keyField = GetFieldIDOrDie(env, clazz, "key", "Ljava/lang/String;"); s_dataSizeField = GetFieldIDOrDie(env, clazz, "dataSize", "I"); return RegisterMethodsOrDie(env, "android/app/backup/BackupDataInput", g_methods, NELEM(g_methods)); } }
core/jni/android_backup_BackupHelperDispatcher.cpp +7 −12 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ #include <sys/uio.h> #include <unistd.h> #include "core_jni_helpers.h" #define VERSION_1_HEADER 0x01706c48 // 'Hlp'1 little endian Loading Loading @@ -227,18 +228,12 @@ static const JNINativeMethod g_methods[] = { int register_android_backup_BackupHelperDispatcher(JNIEnv* env) { jclass clazz = env->FindClass("android/app/backup/BackupHelperDispatcher$Header"); LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupHelperDispatcher.Header"); s_chunkSizeField = env->GetFieldID(clazz, "chunkSize", "I"); LOG_FATAL_IF(s_chunkSizeField == NULL, "Unable to find chunkSize field in android.app.backup.BackupHelperDispatcher.Header"); s_keyPrefixField = env->GetFieldID(clazz, "keyPrefix", "Ljava/lang/String;"); LOG_FATAL_IF(s_keyPrefixField == NULL, "Unable to find keyPrefix field in android.app.backup.BackupHelperDispatcher.Header"); return AndroidRuntime::registerNativeMethods(env, "android/app/backup/BackupHelperDispatcher", g_methods, NELEM(g_methods)); jclass clazz = FindClassOrDie(env, "android/app/backup/BackupHelperDispatcher$Header"); s_chunkSizeField = GetFieldIDOrDie(env, clazz, "chunkSize", "I"); s_keyPrefixField = GetFieldIDOrDie(env, clazz, "keyPrefix", "Ljava/lang/String;"); return RegisterMethodsOrDie(env, "android/app/backup/BackupHelperDispatcher", g_methods, NELEM(g_methods)); } }
core/jni/android_content_res_Configuration.cpp +20 −40 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ #include <android_runtime/android_content_res_Configuration.h> #include "android_runtime/AndroidRuntime.h" #include "core_jni_helpers.h" namespace android { static struct { Loading Loading @@ -70,48 +72,26 @@ void android_Configuration_getFromJava( gConfigurationClassInfo.smallestScreenWidthDp); } #define FIND_CLASS(var, className) \ var = env->FindClass(className); \ LOG_FATAL_IF(! var, "Unable to find class " className); #define GET_FIELD_ID(var, clazz, fieldName, fieldDescriptor) \ var = env->GetFieldID(clazz, fieldName, fieldDescriptor); \ LOG_FATAL_IF(! var, "Unable to find field " fieldName); int register_android_content_res_Configuration(JNIEnv* env) { jclass clazz; FIND_CLASS(clazz, "android/content/res/Configuration"); jclass clazz = FindClassOrDie(env, "android/content/res/Configuration"); GET_FIELD_ID(gConfigurationClassInfo.mcc, clazz, "mcc", "I"); GET_FIELD_ID(gConfigurationClassInfo.mnc, clazz, "mnc", "I"); GET_FIELD_ID(gConfigurationClassInfo.locale, clazz, "locale", "Ljava/util/Locale;"); GET_FIELD_ID(gConfigurationClassInfo.screenLayout, clazz, "screenLayout", "I"); GET_FIELD_ID(gConfigurationClassInfo.touchscreen, clazz, "touchscreen", "I"); GET_FIELD_ID(gConfigurationClassInfo.keyboard, clazz, "keyboard", "I"); GET_FIELD_ID(gConfigurationClassInfo.keyboardHidden, clazz, "keyboardHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.hardKeyboardHidden, clazz, "hardKeyboardHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.navigation, clazz, "navigation", "I"); GET_FIELD_ID(gConfigurationClassInfo.navigationHidden, clazz, "navigationHidden", "I"); GET_FIELD_ID(gConfigurationClassInfo.orientation, clazz, "orientation", "I"); GET_FIELD_ID(gConfigurationClassInfo.uiMode, clazz, "uiMode", "I"); GET_FIELD_ID(gConfigurationClassInfo.screenWidthDp, clazz, "screenWidthDp", "I"); GET_FIELD_ID(gConfigurationClassInfo.screenHeightDp, clazz, "screenHeightDp", "I"); GET_FIELD_ID(gConfigurationClassInfo.smallestScreenWidthDp, clazz, gConfigurationClassInfo.mcc = GetFieldIDOrDie(env, clazz, "mcc", "I"); gConfigurationClassInfo.mnc = GetFieldIDOrDie(env, clazz, "mnc", "I"); gConfigurationClassInfo.locale = GetFieldIDOrDie(env, clazz, "locale", "Ljava/util/Locale;"); gConfigurationClassInfo.screenLayout = GetFieldIDOrDie(env, clazz, "screenLayout", "I"); gConfigurationClassInfo.touchscreen = GetFieldIDOrDie(env, clazz, "touchscreen", "I"); gConfigurationClassInfo.keyboard = GetFieldIDOrDie(env, clazz, "keyboard", "I"); gConfigurationClassInfo.keyboardHidden = GetFieldIDOrDie(env, clazz, "keyboardHidden", "I"); gConfigurationClassInfo.hardKeyboardHidden = GetFieldIDOrDie(env, clazz, "hardKeyboardHidden", "I"); gConfigurationClassInfo.navigation = GetFieldIDOrDie(env, clazz, "navigation", "I"); gConfigurationClassInfo.navigationHidden = GetFieldIDOrDie(env, clazz, "navigationHidden", "I"); gConfigurationClassInfo.orientation = GetFieldIDOrDie(env, clazz, "orientation", "I"); gConfigurationClassInfo.uiMode = GetFieldIDOrDie(env, clazz, "uiMode", "I"); gConfigurationClassInfo.screenWidthDp = GetFieldIDOrDie(env, clazz, "screenWidthDp", "I"); gConfigurationClassInfo.screenHeightDp = GetFieldIDOrDie(env, clazz, "screenHeightDp", "I"); gConfigurationClassInfo.smallestScreenWidthDp = GetFieldIDOrDie(env, clazz, "smallestScreenWidthDp", "I"); return 0; Loading