diff options
| author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2024-06-10 16:42:13 +0200 |
|---|---|---|
| committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2024-06-11 20:28:07 +0200 |
| commit | 254d5ca38dff0b580777b5067816a6bb2669704d (patch) | |
| tree | f87607e1bf3f7a55a3d22e3844119bedcb7c294c /src/plugins/platforms/android/androidcontentfileengine.cpp | |
| parent | 4245987f6875d01853053c50d13ecf42b61fc0ad (diff) | |
JNI: use QJniArray in ContentFileEngine
Replace manual array creation and conversion code.
Pick-to: 6.8
Change-Id: Icd728b69790c0ed7a6ab38ff4f07622bea2be000
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Diffstat (limited to 'src/plugins/platforms/android/androidcontentfileengine.cpp')
| -rw-r--r-- | src/plugins/platforms/android/androidcontentfileengine.cpp | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/src/plugins/platforms/android/androidcontentfileengine.cpp b/src/plugins/platforms/android/androidcontentfileengine.cpp index db6c601f335..5757f5d8cc0 100644 --- a/src/plugins/platforms/android/androidcontentfileengine.cpp +++ b/src/plugins/platforms/android/androidcontentfileengine.cpp @@ -21,7 +21,6 @@ Q_DECLARE_JNI_CLASS(UriType, "android/net/Uri"); Q_DECLARE_JNI_CLASS(Uri, "android/net/Uri"); Q_DECLARE_JNI_CLASS(ParcelFileDescriptorType, "android/os/ParcelFileDescriptor"); Q_DECLARE_JNI_CLASS(CursorType, "android/database/Cursor"); -Q_DECLARE_JNI_TYPE(StringArray, "[Ljava/lang/String;"); static QJniObject &contentResolverInstance() { @@ -375,11 +374,9 @@ public: auto cursor = contentResolverInstance().callMethod<QtJniTypes::CursorType>( "query", uri.object<QtJniTypes::UriType>(), - projection.isEmpty() ? - nullptr : fromStringList(projection).object<QtJniTypes::StringArray>(), + QJniArray(projection), selection.isEmpty() ? nullptr : QJniObject::fromString(selection).object<jstring>(), - selectionArgs.isEmpty() ? - nullptr : fromStringList(selectionArgs).object<QtJniTypes::StringArray>(), + QJniArray(selectionArgs), sortOrder.isEmpty() ? nullptr : QJniObject::fromString(sortOrder).object<jstring>()); if (!cursor.isValid()) return {}; @@ -413,15 +410,6 @@ public: bool moveToNext() { return m_object.callMethod<jboolean>("moveToNext"); } private: - static QJniObject fromStringList(const QStringList &list) - { - QJniEnvironment env; - auto array = env->NewObjectArray(list.size(), env.findClass("java/lang/String"), nullptr); - for (int i = 0; i < list.size(); ++i) - env->SetObjectArrayElement(array, i, QJniObject::fromString(list[i]).object()); - return QJniObject::fromLocalRef(array); - } - QJniObject m_object; }; |
