Combined both of your solutions and rewritten to QT6:
QJniObject activity = QJniObject::callStaticObjectMethod("org/qtproject/qt/android/QtNative", "activity", "()Landroid/app/Activity;");
if (activity.isValid()) {
QJniObject param = QJniObject::fromString("package:com.filmtoro.appMobile");
// Equivalent to Jave code: 'Uri uri = Uri::parse("...");'
QJniObject uri = QJniObject::callStaticObjectMethod("android/net/Uri", "parse", "(Ljava/lang/String;)Landroid/net/Uri;", param.object<jstring>());
if (!uri.isValid()) {
qWarning("Unable to create Uri object");
return;
}
QJniObject packageName = QJniObject::fromString("android.settings.APPLICATION_DETAILS_SETTINGS");
QJniObject intent("android/content/Intent","(Ljava/lang/String;)V", packageName.object<jstring>());
if (!intent.isValid()) {
qWarning("Unable to create Intent object");
return;
}
intent.callObjectMethod("addCategory", "(Ljava/lang/String;)Landroid/content/Intent;", QJniObject::fromString("android.intent.category.DEFAULT").object<jstring>());
intent.callObjectMethod("setData", "(Landroid/net/Uri;)Landroid/content/Intent;", uri.object<jobject>());
QtAndroidPrivate::startActivity(intent.object<jobject>(), 10101);
}
tho I wander if there is an possibility to access directly permission page of specific permission, ie: i want to get into app permissions/Camera permission