From c1d9cc68c7a70fe3a61a0b21b57bf4afd990e564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Str=C3=B8mme?= Date: Fri, 11 Oct 2013 15:09:42 +0200 Subject: Removed JNI_OnLoad() as it's no longer needed. Change-Id: I568576b0ec5d9c81a59dca21f43a8c7ce8f6bef1 Reviewed-by: Yoann Lopes --- .../qandroidjnienvironment.pro | 2 +- .../tst_qandroidjnienvironment.cpp | 25 ++++++----------- .../qandroidjniobject/tst_qandroidjniobject.cpp | 32 ++-------------------- 3 files changed, 11 insertions(+), 48 deletions(-) diff --git a/tests/auto/qandroidjnienvironment/qandroidjnienvironment.pro b/tests/auto/qandroidjnienvironment/qandroidjnienvironment.pro index 3c4fcf7..b253c17 100644 --- a/tests/auto/qandroidjnienvironment/qandroidjnienvironment.pro +++ b/tests/auto/qandroidjnienvironment/qandroidjnienvironment.pro @@ -1,4 +1,4 @@ CONFIG += testcase TARGET = tst_qandroidjnienvironment -QT += testlib androidextras +QT += testlib androidextras core-private SOURCES += tst_qandroidjnienvironment.cpp diff --git a/tests/auto/qandroidjnienvironment/tst_qandroidjnienvironment.cpp b/tests/auto/qandroidjnienvironment/tst_qandroidjnienvironment.cpp index 307e6b7..3115ae3 100644 --- a/tests/auto/qandroidjnienvironment/tst_qandroidjnienvironment.cpp +++ b/tests/auto/qandroidjnienvironment/tst_qandroidjnienvironment.cpp @@ -41,6 +41,7 @@ #include #include +#include class tst_QAndroidJniEnvironment : public QObject { @@ -49,23 +50,19 @@ class tst_QAndroidJniEnvironment : public QObject private slots: void jniEnv(); void javaVM(); - -public: - static JavaVM *m_javaVM; }; -JavaVM *tst_QAndroidJniEnvironment::m_javaVM = 0; - void tst_QAndroidJniEnvironment::jniEnv() { - QVERIFY(m_javaVM); + JavaVM *javaVM = QtAndroidPrivate::javaVM(); + QVERIFY(javaVM); { QAndroidJniEnvironment env; // JNI environment should now be attached to the current thread JNIEnv *jni = 0; - QCOMPARE(m_javaVM->GetEnv((void**)&jni, JNI_VERSION_1_6), JNI_OK); + QCOMPARE(javaVM->GetEnv((void**)&jni, JNI_VERSION_1_6), JNI_OK); JNIEnv *e = env; QVERIFY(e); @@ -84,28 +81,22 @@ void tst_QAndroidJniEnvironment::jniEnv() // The environment should automatically be detached when QAndroidJniEnvironment goes out of scope JNIEnv *jni = 0; - QCOMPARE(m_javaVM->GetEnv((void**)&jni, JNI_VERSION_1_6), JNI_EDETACHED); + QCOMPARE(javaVM->GetEnv((void**)&jni, JNI_VERSION_1_6), JNI_EDETACHED); } void tst_QAndroidJniEnvironment::javaVM() { - QVERIFY(m_javaVM); + JavaVM *javaVM = QtAndroidPrivate::javaVM(); + QVERIFY(javaVM); QAndroidJniEnvironment env; - QCOMPARE(env.javaVM(), m_javaVM); + QCOMPARE(env.javaVM(), javaVM); JavaVM *vm = 0; QCOMPARE(env->GetJavaVM(&vm), JNI_OK); QCOMPARE(env.javaVM(), vm); } -Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) -{ - Q_UNUSED(reserved) - tst_QAndroidJniEnvironment::m_javaVM = vm; - return JNI_VERSION_1_6; -} - QTEST_APPLESS_MAIN(tst_QAndroidJniEnvironment) #include "tst_qandroidjnienvironment.moc" diff --git a/tests/auto/qandroidjniobject/tst_qandroidjniobject.cpp b/tests/auto/qandroidjniobject/tst_qandroidjniobject.cpp index 4b8f1d5..47b476a 100644 --- a/tests/auto/qandroidjniobject/tst_qandroidjniobject.cpp +++ b/tests/auto/qandroidjniobject/tst_qandroidjniobject.cpp @@ -97,13 +97,8 @@ private slots: void getIntField(); void cleanupTestCase(); - -public: - static jclass m_activityDelegateClass; }; -jclass tst_QAndroidJniObject::m_activityDelegateClass = 0; - tst_QAndroidJniObject::tst_QAndroidJniObject() { } @@ -686,7 +681,7 @@ void tst_QAndroidJniObject::getBooleanField() { QVERIFY(m_activityDelegateClass); - QAndroidJniObject obj(m_activityDelegateClass); + QAndroidJniObject obj("org/qtproject/qt5/android/QtActivityDelegate"); QVERIFY(obj.isValid()); QVERIFY(!obj.getField("m_fullScreen")); @@ -694,9 +689,7 @@ void tst_QAndroidJniObject::getBooleanField() void tst_QAndroidJniObject::getIntField() { - QVERIFY(m_activityDelegateClass); - - QAndroidJniObject obj(m_activityDelegateClass); + QAndroidJniObject obj("org/qtproject/qt5/android/QtActivityDelegate"); QVERIFY(obj.isValid()); jint res = obj.getField("m_currentRotation"); @@ -704,27 +697,6 @@ void tst_QAndroidJniObject::getIntField() QCOMPARE(res, -1); } -Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) -{ - typedef union { - JNIEnv *nenv; - void *venv; - } _JNIEnv; - - _JNIEnv uenv; - uenv.venv = Q_NULLPTR; - - if (vm->GetEnv(&uenv.venv, JNI_VERSION_1_6) != JNI_OK) - return JNI_ERR; - - JNIEnv *env = uenv.nenv; - - jclass clazz = env->FindClass("org/qtproject/qt5/android/QtActivityDelegate"); - tst_QAndroidJniObject::m_activityDelegateClass = (jclass)env->NewGlobalRef(clazz); - - return JNI_VERSION_1_6; -} - QTEST_APPLESS_MAIN(tst_QAndroidJniObject) #include "tst_qandroidjniobject.moc" -- cgit v1.2.3