From aea9bf54ed71caa1ee548521485229d5c122bd1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=97=D0=B0=D1=86=D0=B5=D0=BF=D0=B8=D0=BD?= Date: Mon, 12 Mar 2018 18:08:45 +0300 Subject: [PATCH] [android] Fixed network policy class initialization in JNI on nexus 5 --- android/jni/com/mapswithme/core/jni_helper.cpp | 3 +++ android/jni/com/mapswithme/core/jni_helper.hpp | 1 + android/jni/com/mapswithme/util/NetworkPolicy.cpp | 5 ++--- android/multidex-config.txt | 1 + 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/android/jni/com/mapswithme/core/jni_helper.cpp b/android/jni/com/mapswithme/core/jni_helper.cpp index cf12acbd1e..74a9c9106a 100644 --- a/android/jni/com/mapswithme/core/jni_helper.cpp +++ b/android/jni/com/mapswithme/core/jni_helper.cpp @@ -28,6 +28,7 @@ jclass g_loggerFactoryClazz; jclass g_keyValueClazz; jclass g_httpUploaderClazz; jclass g_httpUploaderResultClazz; +jclass g_networkPolicyClazz; extern "C" { @@ -53,6 +54,7 @@ JNI_OnLoad(JavaVM * jvm, void *) g_keyValueClazz = jni::GetGlobalClassRef(env, "com/mapswithme/util/KeyValue"); g_httpUploaderClazz = jni::GetGlobalClassRef(env, "com/mapswithme/util/HttpUploader"); g_httpUploaderResultClazz = jni::GetGlobalClassRef(env, "com/mapswithme/util/HttpUploader$Result"); + g_networkPolicyClazz = jni::GetGlobalClassRef(env, "com/mapswithme/util/NetworkPolicy"); return JNI_VERSION_1_6; } @@ -76,6 +78,7 @@ JNI_OnUnload(JavaVM *, void *) env->DeleteGlobalRef(g_keyValueClazz); env->DeleteGlobalRef(g_httpUploaderClazz); env->DeleteGlobalRef(g_httpUploaderResultClazz); + env->DeleteGlobalRef(g_networkPolicyClazz); } } // extern "C" diff --git a/android/jni/com/mapswithme/core/jni_helper.hpp b/android/jni/com/mapswithme/core/jni_helper.hpp index e575962611..9db06924f0 100644 --- a/android/jni/com/mapswithme/core/jni_helper.hpp +++ b/android/jni/com/mapswithme/core/jni_helper.hpp @@ -26,6 +26,7 @@ extern jclass g_loggerFactoryClazz; extern jclass g_keyValueClazz; extern jclass g_httpUploaderClazz; extern jclass g_httpUploaderResultClazz; +extern jclass g_networkPolicyClazz; namespace jni { diff --git a/android/jni/com/mapswithme/util/NetworkPolicy.cpp b/android/jni/com/mapswithme/util/NetworkPolicy.cpp index cf985255b6..3093aa6a8d 100644 --- a/android/jni/com/mapswithme/util/NetworkPolicy.cpp +++ b/android/jni/com/mapswithme/util/NetworkPolicy.cpp @@ -11,9 +11,8 @@ bool GetNetworkPolicyStatus(JNIEnv * env, jobject obj) bool GetCurrentNetworkUsageStatus(JNIEnv * env) { - static jclass const clazz = jni::GetGlobalClassRef(env, "com/mapswithme/util/NetworkPolicy"); static jmethodID const method = - jni::GetStaticMethodID(env, clazz, "getCurrentNetworkUsageStatus", "()Z"); - return env->CallStaticBooleanMethod(clazz, method); + jni::GetStaticMethodID(env, g_networkPolicyClazz, "getCurrentNetworkUsageStatus", "()Z"); + return env->CallStaticBooleanMethod(g_networkPolicyClazz, method); } } // namespace network_policy diff --git a/android/multidex-config.txt b/android/multidex-config.txt index a7c9a6e0ca..5548c5cf64 100644 --- a/android/multidex-config.txt +++ b/android/multidex-config.txt @@ -11,5 +11,6 @@ com/mapswithme/util/HttpClient$HttpHeader.class com/mapswithme/util/HttpUploader.class com/mapswithme/util/HttpUploader$Result.class com/mapswithme/util/KeyValue.class +com/mapswithme/util/NetworkPolicy.class com/mapswithme/util/Utils.class com/my/tracker/MyTracker.class