Frameworks/base: Consistency in core/jni

Make consistent use of core_jni_helpers for registration.

Translate some #ifdefs into const bools.

Change-Id: I37639aa053dd50f003a552cbd8550dddecc811c5
This commit is contained in:
Andreas Gampe
2014-11-20 22:02:20 -08:00
parent 1e765df61a
commit b9fd0471a6
2 changed files with 18 additions and 28 deletions

View File

@@ -23,7 +23,7 @@
#include <sys/stat.h> #include <sys/stat.h>
#include <sys/types.h> #include <sys/types.h>
#include <android_runtime/AndroidRuntime.h> #include "core_jni_helpers.h"
#include <jni.h> #include <jni.h>
#include <ScopedUtfChars.h> #include <ScopedUtfChars.h>
#include <utils/misc.h> #include <utils/misc.h>
@@ -192,8 +192,7 @@ static JNINativeMethod gMethods[] = {
}; };
int register_android_net_TrafficStats(JNIEnv* env) { int register_android_net_TrafficStats(JNIEnv* env) {
return AndroidRuntime::registerNativeMethods(env, "android/net/TrafficStats", return RegisterMethodsOrDie(env, "android/net/TrafficStats", gMethods, NELEM(gMethods));
gMethods, NELEM(gMethods));
} }
} }

View File

@@ -21,7 +21,7 @@
#include <sys/stat.h> #include <sys/stat.h>
#include <sys/types.h> #include <sys/types.h>
#include <android_runtime/AndroidRuntime.h> #include <core_jni_helpers.h>
#include <jni.h> #include <jni.h>
#include <ScopedUtfChars.h> #include <ScopedUtfChars.h>
@@ -284,16 +284,6 @@ static int readNetworkStatsDetail(JNIEnv* env, jclass clazz, jobject stats,
return 0; return 0;
} }
static jclass findClass(JNIEnv* env, const char* name) {
ScopedLocalRef<jclass> localClass(env, env->FindClass(name));
jclass result = reinterpret_cast<jclass>(env->NewGlobalRef(localClass.get()));
if (result == NULL) {
ALOGE("failed to find class '%s'", name);
abort();
}
return result;
}
static JNINativeMethod gMethods[] = { static JNINativeMethod gMethods[] = {
{ "nativeReadNetworkStatsDetail", { "nativeReadNetworkStatsDetail",
"(Landroid/net/NetworkStats;Ljava/lang/String;I[Ljava/lang/String;I)I", "(Landroid/net/NetworkStats;Ljava/lang/String;I[Ljava/lang/String;I)I",
@@ -301,24 +291,25 @@ static JNINativeMethod gMethods[] = {
}; };
int register_com_android_internal_net_NetworkStatsFactory(JNIEnv* env) { int register_com_android_internal_net_NetworkStatsFactory(JNIEnv* env) {
int err = AndroidRuntime::registerNativeMethods(env, int err = RegisterMethodsOrDie(env,
"com/android/internal/net/NetworkStatsFactory", gMethods, "com/android/internal/net/NetworkStatsFactory", gMethods,
NELEM(gMethods)); NELEM(gMethods));
gStringClass = findClass(env, "java/lang/String"); gStringClass = FindClassOrDie(env, "java/lang/String");
gStringClass = MakeGlobalRefOrDie(env, gStringClass);
jclass clazz = env->FindClass("android/net/NetworkStats"); jclass clazz = FindClassOrDie(env, "android/net/NetworkStats");
gNetworkStatsClassInfo.size = env->GetFieldID(clazz, "size", "I"); gNetworkStatsClassInfo.size = GetFieldIDOrDie(env, clazz, "size", "I");
gNetworkStatsClassInfo.capacity = env->GetFieldID(clazz, "capacity", "I"); gNetworkStatsClassInfo.capacity = GetFieldIDOrDie(env, clazz, "capacity", "I");
gNetworkStatsClassInfo.iface = env->GetFieldID(clazz, "iface", "[Ljava/lang/String;"); gNetworkStatsClassInfo.iface = GetFieldIDOrDie(env, clazz, "iface", "[Ljava/lang/String;");
gNetworkStatsClassInfo.uid = env->GetFieldID(clazz, "uid", "[I"); gNetworkStatsClassInfo.uid = GetFieldIDOrDie(env, clazz, "uid", "[I");
gNetworkStatsClassInfo.set = env->GetFieldID(clazz, "set", "[I"); gNetworkStatsClassInfo.set = GetFieldIDOrDie(env, clazz, "set", "[I");
gNetworkStatsClassInfo.tag = env->GetFieldID(clazz, "tag", "[I"); gNetworkStatsClassInfo.tag = GetFieldIDOrDie(env, clazz, "tag", "[I");
gNetworkStatsClassInfo.rxBytes = env->GetFieldID(clazz, "rxBytes", "[J"); gNetworkStatsClassInfo.rxBytes = GetFieldIDOrDie(env, clazz, "rxBytes", "[J");
gNetworkStatsClassInfo.rxPackets = env->GetFieldID(clazz, "rxPackets", "[J"); gNetworkStatsClassInfo.rxPackets = GetFieldIDOrDie(env, clazz, "rxPackets", "[J");
gNetworkStatsClassInfo.txBytes = env->GetFieldID(clazz, "txBytes", "[J"); gNetworkStatsClassInfo.txBytes = GetFieldIDOrDie(env, clazz, "txBytes", "[J");
gNetworkStatsClassInfo.txPackets = env->GetFieldID(clazz, "txPackets", "[J"); gNetworkStatsClassInfo.txPackets = GetFieldIDOrDie(env, clazz, "txPackets", "[J");
gNetworkStatsClassInfo.operations = env->GetFieldID(clazz, "operations", "[J"); gNetworkStatsClassInfo.operations = GetFieldIDOrDie(env, clazz, "operations", "[J");
return err; return err;
} }