Как снова запустить собственное приложение qt на устройстве Android - PullRequest
0 голосов
/ 14 апреля 2019

Я хочу снова запустить собственное приложение с другими аргументами (для службы сторожевых собак).

Но я не могу запустить любое приложение. Вот код основной функции:

    QAndroidJniObject activity = QtAndroid::androidActivity();

    QAndroidJniObject packageManager = activity.callObjectMethod(
        "getPackageManager",
        "()Landroid/content/pm/PackageManager;"
    );

    QAndroidJniObject param =
    QAndroidJniObject::fromString("org.qtproject.example.my_app_name");

    QAndroidJniObject intent = packageManager.callObjectMethod(
        "getLaunchIntentForPackage",
        "()Landroid/content/Intent;",
        param.object<jstring>()
    );

    activity.callMethod<void>(
        "startActivity",
        "(Landroid/content/Intent;)V",
        intent.object<jobject>()
    );

Ошибка:

E/AndroidRuntime(21014): FATAL EXCEPTION: QtThread
E/AndroidRuntime(21014): java.lang.NullPointerException
E/AndroidRuntime(21014):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1416)
E/AndroidRuntime(21014):    at android.app.Activity.startActivityForResult(Activity.java:3587)
E/AndroidRuntime(21014):    at android.app.Activity.startActivityForResult(Activity.java:3548)
E/AndroidRuntime(21014):    at android.app.Activity.startActivity(Activity.java:3758)
E/AndroidRuntime(21014):    at android.app.Activity.startActivity(Activity.java:3726)
E/AndroidRuntime(21014):    at dalvik.system.NativeStart.run(Native Method)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...