Hi, I am looking for a way to update my android application manually. My idea is to start an activity/intent via androidextras module.
I have tried following calls:

Qt Code:
  1. QAndroidJniObject activity = QAndroidJniObject::callStaticObjectMethod("org/qtproject/qt5/android/QtNative", "activity", "()Landroid/app/Activity;"); //activity is valid
  2. QAndroidJniObject path=QAndroidJniObject::fromString("file://mnt/sdcard/Download/QtApp.apk"); //path is valid
  3. QAndroidJniObject uri=QAndroidJniObject("java/net/URI","(Ljava/lang/String;)V",path.object<jstring>()); //uri is valid
  4. QAndroidJniObject intent("android/content/Intent","()V"); //intent is valid, but empty
  5. QAndroidJniObject type=QAndroidJniObject::fromString("application/vnd.android.package-archive"); //type is valid
  6. QAndroidJniObject result=intent.callObjectMethod("setType","(Ljava/lang/String;)Landroid/content/Intent;",type.object<jobject>()); //result is valid, intent contains type
  7. result=intent.callObjectMethod("setDataAndNormalize","(Ljava/net/URI;)Landroid/content/Intent;",uri.object<jobject>()); //result is invalid, intent contains type
  8. activity.callObjectMethod("startActivity","(Landroid/content/Intent;)V",intent.object<jobject>()); //works, but shows a selection screen for the intent containing email, bluetooth etc. because intent's data member is missing
To copy to clipboard, switch view to plain text mode 

Whenever I try to call setDataAndNormalize or even setData, result is always invalid and data member of intent is not set. Any clues what I am doing wrong?