diff options
author | Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in> | 2014-06-23 17:18:17 +0530 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-06-25 13:50:21 +0800 |
commit | 6e106156666ac2c107286a5bfd519474620cb8f9 (patch) | |
tree | 83e1ba8b5f441771e652ce3d781a167e6f79f09f | |
parent | 772727fc7f44faaf94afc24bd1f151e40ddaefef (diff) | |
download | subsurface-6e106156666ac2c107286a5bfd519474620cb8f9.tar.gz |
Template for subsurface android package
For modifications to the final source code of built android package
such as permission additions and inclusion of xml and java files, it
is necessary to maintain a template. The template is copied without
any modifications on top of qt android-template before building
subsurface libraries. Refer:
http://qt-project.org/doc/qt-5/deployment-android.html#qmake-variables
Files that are required to be directly copied to android package
would be included in directory android.
Icons for subsurface on android and string.xml are included.
Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | android/AndroidManifest.xml | 108 | ||||
-rw-r--r-- | android/res/drawable-hdpi/subsurface_icon.png | bin | 0 -> 20958 bytes | |||
-rw-r--r-- | android/res/drawable-mdpi/subsurface_icon.png | bin | 0 -> 9402 bytes | |||
-rw-r--r-- | android/res/drawable-xhdpi/subsurface_icon.png | bin | 0 -> 37139 bytes | |||
-rw-r--r-- | android/res/drawable-xxhdpi/subsurface_icon.png | bin | 0 -> 83344 bytes | |||
-rw-r--r-- | android/res/drawable-xxxhdpi/subsurface_icon.png | bin | 0 -> 148010 bytes | |||
-rw-r--r-- | android/res/values/strings.xml | 8 | ||||
-rw-r--r-- | subsurface-install.pri | 2 | ||||
-rw-r--r-- | subsurface.pro | 6 |
10 files changed, 125 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index 927228628..8b921ab5d 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ Makefile subsurface.pro.user* Subsurface.app .DS_Store +!android/**/*.xml diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml new file mode 100644 index 000000000..6d7b24db2 --- /dev/null +++ b/android/AndroidManifest.xml @@ -0,0 +1,108 @@ +<?xml version='1.0' encoding='utf-8'?> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="org.subsurface" + android:installLocation="auto" + android:versionCode="1" + android:versionName="1.0" > + + <application + android:name="org.qtproject.qt5.android.bindings.QtApplication" + android:hardwareAccelerated="true" + android:label="@string/app_name" + android:icon="@drawable/subsurface_icon" > + <activity + android:name="org.qtproject.qt5.android.bindings.QtActivity" + android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|locale|fontScale|keyboard|keyboardHidden|navigation" + android:label="@string/app_name" + android:launchMode="singleTop" + android:screenOrientation="unspecified" > + <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:name="android.app.ministro_not_found_msg" + android:value="@string/ministro_not_found_msg" /> + <meta-data + android:name="android.app.ministro_needed_msg" + android:value="@string/ministro_needed_msg" /> + <meta-data + android:name="android.app.fatal_error_msg" + android:value="@string/fatal_error_msg" /> + <!-- Messages maps --> + + + <!-- Splash screen --> + <!-- + <meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/logo"/> + --> + <!-- Splash screen --> + + </application> + + <uses-sdk android:minSdkVersion="12" /> + + <supports-screens + android:anyDensity="true" + android:largeScreens="true" + android:normalScreens="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/android/res/drawable-hdpi/subsurface_icon.png b/android/res/drawable-hdpi/subsurface_icon.png Binary files differnew file mode 100644 index 000000000..659ee2619 --- /dev/null +++ b/android/res/drawable-hdpi/subsurface_icon.png diff --git a/android/res/drawable-mdpi/subsurface_icon.png b/android/res/drawable-mdpi/subsurface_icon.png Binary files differnew file mode 100644 index 000000000..57465be23 --- /dev/null +++ b/android/res/drawable-mdpi/subsurface_icon.png diff --git a/android/res/drawable-xhdpi/subsurface_icon.png b/android/res/drawable-xhdpi/subsurface_icon.png Binary files differnew file mode 100644 index 000000000..0d2e2e8cb --- /dev/null +++ b/android/res/drawable-xhdpi/subsurface_icon.png diff --git a/android/res/drawable-xxhdpi/subsurface_icon.png b/android/res/drawable-xxhdpi/subsurface_icon.png Binary files differnew file mode 100644 index 000000000..9a0a470a6 --- /dev/null +++ b/android/res/drawable-xxhdpi/subsurface_icon.png diff --git a/android/res/drawable-xxxhdpi/subsurface_icon.png b/android/res/drawable-xxxhdpi/subsurface_icon.png Binary files differnew file mode 100644 index 000000000..00b0a13c9 --- /dev/null +++ b/android/res/drawable-xxxhdpi/subsurface_icon.png diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml new file mode 100644 index 000000000..2a79f113e --- /dev/null +++ b/android/res/values/strings.xml @@ -0,0 +1,8 @@ +<?xml version='1.0' encoding='utf-8'?> +<resources> + <string name="app_name">Subsurface</string> + + <string name="ministro_not_found_msg">Can\'t find Ministro service.\nThe application can\'t start.</string> + <string name="ministro_needed_msg">This application requires Ministro service. Would you like to install it?</string> + <string name="fatal_error_msg">Your application encountered a fatal error and cannot continue.</string> +</resources> diff --git a/subsurface-install.pri b/subsurface-install.pri index db1c0ff6a..0fec89d32 100644 --- a/subsurface-install.pri +++ b/subsurface-install.pri @@ -130,6 +130,8 @@ mac { } else: android { # Android install rules QMAKE_BUNDLE_DATA += translation qttranslation + # Android template directory + ANDROID_PACKAGE_SOURCE_DIR = $$OUT_PWD/android } else { # Linux install rules # On Linux, we can count on packagers doing the right thing diff --git a/subsurface.pro b/subsurface.pro index 1172020c5..86d19cd71 100644 --- a/subsurface.pro +++ b/subsurface.pro @@ -263,6 +263,12 @@ theme.commands += $(CHK_DIR_EXISTS) $$OUT_PWD/theme || $(COPY_DIR) $$PWD/theme $ all.depends += theme QMAKE_EXTRA_TARGETS += theme +android { + android.commands += $(CHK_DIR_EXISTS) $$OUT_PWD/android || $(COPY_DIR) $$PWD/android $$OUT_PWD + all.depends += android + QMAKE_EXTRA_TARGETS += android +} + DESKTOP_FILE = subsurface.desktop mac: ICON = packaging/macosx/Subsurface.icns else: ICON = subsurface-icon.svg |