diff options
Diffstat (limited to 'src/android/templates')
-rw-r--r-- | src/android/templates/AndroidManifest.xml | 60 | ||||
-rw-r--r-- | src/android/templates/build.gradle | 51 | ||||
-rw-r--r-- | src/android/templates/res/values/libs.xml | 25 | ||||
-rw-r--r-- | src/android/templates/templates.pro | 21 |
4 files changed, 157 insertions, 0 deletions
diff --git a/src/android/templates/AndroidManifest.xml b/src/android/templates/AndroidManifest.xml new file mode 100644 index 0000000000..60c612976f --- /dev/null +++ b/src/android/templates/AndroidManifest.xml @@ -0,0 +1,60 @@ +<?xml version='1.0' encoding='utf-8'?> +<manifest package="org.qtproject.example" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.0" android:versionCode="1" android:installLocation="auto"> + <application android:hardwareAccelerated="true" android:name="org.qtproject.qt5.android.bindings.QtApplication" android:label="-- %%INSERT_APP_NAME%% --"> + <activity android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|locale|fontScale|keyboard|keyboardHidden|navigation" + android:name="org.qtproject.qt5.android.bindings.QtActivity" + android:label="-- %%INSERT_APP_NAME%% --" + android:screenOrientation="unspecified" + android:launchMode="singleTop"> + <intent-filter> + <action android:name="android.intent.action.MAIN"/> + <category android:name="android.intent.category.LAUNCHER"/> + </intent-filter> + <meta-data android:name="android.app.lib_name" android:value="-- %%INSERT_APP_LIB_NAME%% --"/> + <meta-data android:name="android.app.qt_sources_resource_id" android:resource="@array/qt_sources"/> + <meta-data android:name="android.app.repository" android:value="default"/> + <meta-data android:name="android.app.qt_libs_resource_id" android:resource="@array/qt_libs"/> + <meta-data android:name="android.app.bundled_libs_resource_id" android:resource="@array/bundled_libs"/> + <!-- Deploy Qt libs as part of package --> + <meta-data android:name="android.app.bundle_local_qt_libs" android:value="-- %%BUNDLE_LOCAL_QT_LIBS%% --"/> + <meta-data android:name="android.app.bundled_in_lib_resource_id" android:resource="@array/bundled_in_lib"/> + <meta-data android:name="android.app.bundled_in_assets_resource_id" android:resource="@array/bundled_in_assets"/> + <!-- Run with local libs --> + <meta-data android:name="android.app.use_local_qt_libs" android:value="-- %%USE_LOCAL_QT_LIBS%% --"/> + <meta-data android:name="android.app.libs_prefix" android:value="/data/local/tmp/qt/"/> + <meta-data android:name="android.app.load_local_libs" android:value="-- %%INSERT_LOCAL_LIBS%% --"/> + <meta-data android:name="android.app.load_local_jars" android:value="-- %%INSERT_LOCAL_JARS%% --"/> + <meta-data android:name="android.app.static_init_classes" android:value="-- %%INSERT_INIT_CLASSES%% --"/> + <!-- Messages maps --> + <meta-data android:value="@string/ministro_not_found_msg" android:name="android.app.ministro_not_found_msg"/> + <meta-data android:value="@string/ministro_needed_msg" android:name="android.app.ministro_needed_msg"/> + <meta-data android:value="@string/fatal_error_msg" android:name="android.app.fatal_error_msg"/> + <!-- Messages maps --> + + <!-- Splash screen --> + <!-- + <meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/logo"/> + --> + <!-- Splash screen --> + + <!-- Background running --> + <!-- Warning: changing this value to true may cause unexpected crashes if the + application still try to draw after + "applicationStateChanged(Qt::ApplicationSuspended)" + signal is sent! --> + <meta-data android:name="android.app.background_running" android:value="false"/> + <!-- Background running --> + </activity> + </application> + <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="14"/> + <supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/> + + <!-- The following comment will be replaced upon deployment with default permissions based on the dependencies of the application. + Remove the comment if you do not require these default permissions. --> + <!-- %%INSERT_PERMISSIONS --> + + <!-- The following comment will be replaced upon deployment with default features based on the dependencies of the application. + Remove the comment if you do not require these default features. --> + <!-- %%INSERT_FEATURES --> + +</manifest> diff --git a/src/android/templates/build.gradle b/src/android/templates/build.gradle new file mode 100644 index 0000000000..d1ff362269 --- /dev/null +++ b/src/android/templates/build.gradle @@ -0,0 +1,51 @@ +buildscript { + repositories { + mavenCentral() + } + + dependencies { + classpath 'com.android.tools.build:gradle:0.12.1' + } +} + +apply plugin: 'android' + +dependencies { + compile fileTree(dir: 'libs', include: ['*.jar']) +} + +android { + /******************************************************* + * The following variables: + * - androidBuildToolsVersion, + * - androidCompileSdkVersion + * - qt5AndroidDir - holds the path to qt android files + * needed to build any Qt application + * on Android. + * + * are defined in gradle.properties file. This file is + * updated by QtCreator and androiddeployqt tools. + * Changing them manually might break the compilation! + *******************************************************/ + + compileSdkVersion androidCompileSdkVersion.toInteger() + + buildToolsVersion androidBuildToolsVersion + + sourceSets { + main { + manifest.srcFile 'AndroidManifest.xml' + java.srcDirs = [qt5AndroidDir + '/src', 'src', 'java'] + aidl.srcDirs = [qt5AndroidDir + '/src', 'src', 'aidl'] + res.srcDirs = [qt5AndroidDir + '/res', 'res'] + resources.srcDirs = ['src'] + renderscript.srcDirs = ['src'] + assets.srcDirs = ['assets'] + jniLibs.srcDirs = ['libs'] + } + } + + lintOptions { + abortOnError false + } +} diff --git a/src/android/templates/res/values/libs.xml b/src/android/templates/res/values/libs.xml new file mode 100644 index 0000000000..664ab0abec --- /dev/null +++ b/src/android/templates/res/values/libs.xml @@ -0,0 +1,25 @@ +<?xml version='1.0' encoding='utf-8'?> +<resources> + <array name="qt_sources"> + <item>https://download.qt-project.org/ministro/android/qt5/qt-5.3</item> + </array> + + <!-- The following is handled automatically by the deployment tool. It should + not be edited manually. --> + + <array name="bundled_libs"> + <!-- %%INSERT_EXTRA_LIBS%% --> + </array> + + <array name="qt_libs"> + <!-- %%INSERT_QT_LIBS%% --> + </array> + + <array name="bundled_in_lib"> + <!-- %%INSERT_BUNDLED_IN_LIB%% --> + </array> + <array name="bundled_in_assets"> + <!-- %%INSERT_BUNDLED_IN_ASSETS%% --> + </array> + +</resources> diff --git a/src/android/templates/templates.pro b/src/android/templates/templates.pro new file mode 100644 index 0000000000..684a556c5b --- /dev/null +++ b/src/android/templates/templates.pro @@ -0,0 +1,21 @@ +CONFIG -= qt android_install + +templates.files = \ + $$PWD/AndroidManifest.xml \ + $$PWD/res + +templates.path = $$[QT_INSTALL_PREFIX]/src/android/templates + +INSTALLS += templates + +!prefix_build:!equals(OUT_PWD, $$PWD) { + RETURN = $$escape_expand(\\n\\t) + equals(QMAKE_HOST.os, Windows) { + RETURN = $$escape_expand(\\r\\n\\t) + } + OUT_PATH = $$shell_path($$OUT_PWD) + + QMAKE_POST_LINK += \ + $${QMAKE_COPY} $$shell_path($$PWD/AndroidManifest.xml) $$OUT_PATH $$RETURN \ + $${QMAKE_COPY_DIR} $$shell_path($$PWD/res) $$OUT_PATH +} |