Skip to content
Snippets Groups Projects
Commit abd455a9 authored by SeeLook's avatar SeeLook
Browse files

Android: support for opening Nootka with file argument after tap *.noo/*.nel file

parent c75df84a
No related branches found
No related tags found
No related merge requests found
......@@ -55,6 +55,24 @@ QString Tandroid::getExternalPath() {
}
QString Tandroid::getRunArgument() {
QString argument;
QAndroidJniObject activity = QtAndroid::androidActivity();
if (activity.isValid()) {
QAndroidJniObject intent = activity.callObjectMethod("getIntent", "()Landroid/content/Intent;");
if (intent.isValid()) {
QAndroidJniObject data = intent.callObjectMethod("getData", "()Landroid/net/Uri;");
if (data.isValid()) {
QAndroidJniObject arg = data.callObjectMethod("getPath", "()Ljava/lang/String;");
if (arg.isValid())
argument = arg.toString();
}
}
}
return argument;
}
QString Tandroid::accountName() {
return "fake";
// return QAndroidJniObject::callStaticObjectMethod<jstring>
......
......@@ -29,6 +29,7 @@ namespace Tandroid {
void setScreenLockDisabled(); /**< Sets phone/tablet screen saving disabled. */
QString getExternalPath(); /**< Returns path to external storage (SD card). */
QString getRunArgument(); /**< Returns command line argument (usually exam/level file name. */
QString accountName();
}
......
......@@ -19,6 +19,7 @@
#include "mainwindow.h"
#if defined (Q_OS_ANDROID)
#include "ttouchstyle.h"
#include <Android/tandroid.h>
// #include <QtWidgets/qstylefactory.h>
#endif
#include <tinitcorelib.h>
......@@ -105,14 +106,21 @@ int main(int argc, char *argv[])
a->installEventFilter(w);
#endif
#if defined (Q_OS_ANDROID)
qDebug() << "params" << argc;
w->showFullScreen();
#else
w->show();
#endif
if (firstTime && argc > 1)
if (firstTime) {
#if defined (Q_OS_ANDROID)
QString androidArg = Tandroid::getRunArgument();
if (!androidArg.isEmpty())
w->openFile(androidArg);
#else
if (argc > 1)
w->openFile(QString::fromLocal8Bit(argv[argc - 1]));
#endif
}
firstTime = false;
exitCode = a->exec();
delete w;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment