diff options
author | Lars Schmertmann <Lars.Schmertmann@governikus.de> | 2017-03-16 10:56:48 +0100 |
---|---|---|
committer | Lars Schmertmann <lars.schmertmann@governikus.de> | 2017-03-16 12:52:45 +0000 |
commit | 51914eff36cb99823757bf2c970df46081351d32 (patch) | |
tree | 863a6af10a19a29ba15cd88d6d9a3a36493e2ea7 | |
parent | 39cb3e11bc703d0da8a5a15d271efa6b9284b0eb (diff) |
NFC on Android: Fix crash on restart of an app in debug buildv5.9.0-beta1
Task-number: QTBUG-59343
Change-Id: Ib474db8e9a8d38b3d5668499f838cb8d38e10625
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
-rw-r--r-- | src/nfc/android/androidjninfc.cpp | 1 | ||||
-rw-r--r-- | src/nfc/qnearfieldtarget_android.cpp | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/nfc/android/androidjninfc.cpp b/src/nfc/android/androidjninfc.cpp index 4adb6f21..f21d3b08 100644 --- a/src/nfc/android/androidjninfc.cpp +++ b/src/nfc/android/androidjninfc.cpp @@ -88,7 +88,6 @@ QAndroidJniObject getTag(const QAndroidJniObject &intent) { QAndroidJniObject extraTag = QAndroidJniObject::getStaticObjectField("android/nfc/NfcAdapter", "EXTRA_TAG", "Ljava/lang/String;"); QAndroidJniObject tag = intent.callObjectMethod("getParcelableExtra", "(Ljava/lang/String;)Landroid/os/Parcelable;", extraTag.object<jstring>()); - Q_ASSERT_X(tag.isValid(), "getTag", "could not get Tag object"); return tag; } diff --git a/src/nfc/qnearfieldtarget_android.cpp b/src/nfc/qnearfieldtarget_android.cpp index 04718fc5..50c5c1b3 100644 --- a/src/nfc/qnearfieldtarget_android.cpp +++ b/src/nfc/qnearfieldtarget_android.cpp @@ -401,6 +401,8 @@ void NearFieldTarget::updateTechList() // Getting tech list QAndroidJniEnvironment env; QAndroidJniObject tag = AndroidNfc::getTag(m_intent); + Q_ASSERT_X(tag.isValid(), "updateTechList", "could not get Tag object"); + QAndroidJniObject techListArray = tag.callObjectMethod("getTechList", "()[Ljava/lang/String;"); if (!techListArray.isValid()) { handleTargetLost(); @@ -493,6 +495,8 @@ QAndroidJniObject NearFieldTarget::getTagTechnology(const QString &tech) const // Getting requested technology QAndroidJniObject tag = AndroidNfc::getTag(m_intent); + Q_ASSERT_X(tag.isValid(), "getTagTechnology", "could not get Tag object"); + const QString sig = QString::fromUtf8("(Landroid/nfc/Tag;)L%1;"); QAndroidJniObject tagTech = QAndroidJniObject::callStaticObjectMethod(techClass.toUtf8().constData(), "get", sig.arg(techClass).toUtf8().constData(), tag.object<jobject>()); |