File indexing completed on 2025-02-16 04:48:26
0001 /* 0002 SPDX-FileCopyrightText: 2019 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "intent.h" 0008 #include "uri.h" 0009 0010 #include <KAndroidExtras/JniArray> 0011 #include <KAndroidExtras/JniSignature> 0012 0013 #include <QUrl> 0014 0015 using namespace KAndroidExtras; 0016 0017 Intent::~Intent() = default; 0018 0019 Intent::operator QJniObject() const 0020 { 0021 return jniHandle(); 0022 } 0023 0024 template <typename T> 0025 QJniObject Intent::getObjectExtra(const char *methodName, const QJniObject &name) const 0026 { 0027 return jniHandle().callObjectMethod(methodName, Jni::signature<T(java::lang::String)>(), name.object()); 0028 } 0029 0030 QString Intent::getStringExtra(const QJniObject &name) const 0031 { 0032 return getObjectExtra<java::lang::String>("getStringExtra", name).toString(); 0033 } 0034 0035 QStringList Intent::getStringArrayExtra(const QJniObject &name) const 0036 { 0037 const auto extra = getObjectExtra<Jni::Array<java::lang::String>>("getStringArrayExtra", name); 0038 return Jni::fromArray<QStringList>(extra); 0039 }