小编Hor*_*rst的帖子

通过Android上的Qt app(显式)意图调用外部活动 - putExtra不起作用

我有以下问题:在Android上我的基于Qt的应用程序(Qt 5.4.1 for mobile)通过启动显式意图来调用外部活动.如果没有数据附加到intent,这非常有效.但是当我使用putExtra附加字符串等时,目标活动找不到此数据.

Qt app的片段:

QAndroidJniObject activity = QAndroidJniObject::callStaticObjectMethod("org/qtproject/qt5/android/QtNative", "activity", "()Landroid/app/Activity;");
if (activity.isValid())
{
    QAndroidJniObject intent("android/content/Intent", "()V");
    if (intent.isValid())
    {
        QAndroidJniObject action = QAndroidJniObject::fromString("test.app.DO_SOMETHING");
        if (action.isValid())
        {
            intent.callObjectMethod("setAction",
                                    "(Ljava/lang/String;)Landroid/content/Intent;",
                                    action.object<jobject>());

            QAndroidJniObject subject = QAndroidJniObject::fromString("test_subject");
            QAndroidJniObject text = QAndroidJniObject::fromString("test_text");
            jint flag = QAndroidJniObject::getStaticField<jint>("android/content/Intent",
                                                                "FLAG_GRANT_READ_URI_PERMISSION");

            intent.callObjectMethod("addFlags", "(I)V", flag);

            intent.callObjectMethod("putExtra",
                                    "(Ljava/lang/String;Ljava/lang/string;)Landroid/content/Intent;",
                                    subject.object<jstring>(),
                                    text.object<jstring>());

            if (intent.isValid())
                activity.callObjectMethod("startActivity", "(Landroid/content/Intent;)V", intent.object<jobject>());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Java目标应用程序的片段,它尝试获取附加数据:

public class Test_Activity extends Activity
{
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        ...

        Intent intent = getIntent();

        String text = …
Run Code Online (Sandbox Code Playgroud)

qt android external android-activity

6
推荐指数
1
解决办法
1193
查看次数

标签 统计

android ×1

android-activity ×1

external ×1

qt ×1