diff --git a/.gitignore b/.gitignore index 70f48b9..3619b33 100644 --- a/.gitignore +++ b/.gitignore @@ -82,3 +82,6 @@ data/ build/ docs/ +HanoiTowers/client/android/build.gradle +HanoiTowers/client/android/AndroidManifest.xml + diff --git a/CMakeLists.txt b/CMakeLists.txt index d748342..033996b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,9 +73,11 @@ SET(INSTALLER_DIR "${CMAKE_CURRENT_SOURCE_DIR}/installer/") SET(DATA_DIR "${INSTALLER_DIR}/packages/HanoiTowers/data") SET(TARGET_DIR "${CMAKE_CURRENT_SOURCE_DIR}/Distro") -SET(PRODUCT_VER_Mj 1) -SET(PRODUCT_VER_Mn 6) -SET(PRODUCT_VER_Re 2) + +updateGitVars() +set(HANOI_TOWERS_SHORT_VERSION "1.${GIT_COMMIT_COUNT}") +set(HANOI_TOWERS_VERSION "${CHEAT_CARD_SHORT_VERSION}.${GIT_COMMIT_HASH}") + file(MAKE_DIRECTORY ${TARGET_DIR}) initAll() diff --git a/HanoiTowers/Protockol/CMakeLists.txt b/HanoiTowers/Protockol/CMakeLists.txt index 805d89b..2b9dabb 100644 --- a/HanoiTowers/Protockol/CMakeLists.txt +++ b/HanoiTowers/Protockol/CMakeLists.txt @@ -33,4 +33,3 @@ target_link_libraries(${CURRENT_PROJECT} PUBLIC Heart) target_include_directories(${CURRENT_PROJECT} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/src") target_include_directories(${CURRENT_PROJECT} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src/private") -setVersionForTarget(${CURRENT_PROJECT} ${PRODUCT_VER_Mj} ${PRODUCT_VER_Mn} ${PRODUCT_VER_Re}) diff --git a/HanoiTowers/client/CMakeLists.txt b/HanoiTowers/client/CMakeLists.txt index a23a279..6262dba 100644 --- a/HanoiTowers/client/CMakeLists.txt +++ b/HanoiTowers/client/CMakeLists.txt @@ -78,6 +78,13 @@ if (ANDROID) endif() + set(manifest_file "${CMAKE_CURRENT_SOURCE_DIR}/android/AndroidManifest.xml") + configure_file("${manifest_file}.in" ${manifest_file} @ONLY) + + set(gradle_file "${CMAKE_CURRENT_SOURCE_DIR}/android/build.gradle") + configure_file("${gradle_file}.in" ${gradle_file} @ONLY) + + file(GLOB java_files "android/src/com/quasarapp/androidtools/*.java" ) diff --git a/HanoiTowers/client/android/AndroidManifest.xml b/HanoiTowers/client/android/AndroidManifest.xml.in similarity index 74% rename from HanoiTowers/client/android/AndroidManifest.xml rename to HanoiTowers/client/android/AndroidManifest.xml.in index 5497d74..0d292d4 100644 --- a/HanoiTowers/client/android/AndroidManifest.xml +++ b/HanoiTowers/client/android/AndroidManifest.xml.in @@ -1,5 +1,10 @@ <?xml version="1.0"?> -<manifest package="df.mobily.hanoi_towers" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.6.1.2" android:versionCode="28" android:installLocation="auto"> +<manifest +package="df.mobily.hanoi_towers" +xmlns:android="http://schemas.android.com/apk/res/android" +android:versionName="@HANOI_TOWERS_VERSION@" +android:versionCode="@GIT_COMMIT_COUNT@" +android:installLocation="auto"> <!-- 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 --> @@ -8,17 +13,38 @@ Remove the comment if you do not require these default features. --> <!-- %%INSERT_FEATURES --> - <supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/> - <application android:hardwareAccelerated="true" android:name="org.qtproject.qt5.android.bindings.QtApplication" android:label="-- %%INSERT_APP_NAME%% --" android:extractNativeLibs="true" android:icon="@drawable/icon"> - <!-- Sample AdMob app ID: ca-app-pub-5799112356811682~1226170116 --> - <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-5799112356811682~1226170116"/> - <activity android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density" android:name="com.quasarapp.androidtools.MainActivity" android:label="-- %%INSERT_APP_NAME%% --" android:screenOrientation="landscape" android:launchMode="singleTop" android:exported="true"> + <supports-screens + android:largeScreens="true" + android:normalScreens="true" + android:anyDensity="true" + android:smallScreens="true"/> + <application + android:hardwareAccelerated="true" + android:name="com.quasarapp.androidtools.MainApplication" + android:label="-- %%INSERT_APP_NAME%% --" + android:extractNativeLibs="true" + android:requestLegacyExternalStorage="true" + android:icon="@drawable/icon"> + <activity + android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density" + android:name="com.quasarapp.androidtools.MainActivity" + android:label="-- %%INSERT_APP_NAME%% --" + android:screenOrientation="landscape" + android:launchMode="singleTop" + android:exported="true" + + android:theme="@style/splashScreenTheme"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> + <intent-filter> + <action android:name="android.nfc.action.NDEF_DISCOVERED"/> + <category android:name="android.intent.category.DEFAULT"/> + <data android:mimeType="data/cheatcard"/> + </intent-filter> <!-- Application arguments --> - <!-- meta-data android:name="android.app.arguments" android:value="arg1 arg2 arg3"/ --> + <meta-data android:name="android.app.arguments" android:value="-- %%INSERT_APP_ARGUMENTS%% --"/> <!-- Application arguments --> <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"/> @@ -58,9 +84,6 @@ signal is sent! --> <meta-data android:name="android.app.background_running" android:value="false"/> <!-- Background running --> - <!-- auto screen scale factor --> - <meta-data android:name="android.app.auto_screen_scale_factor" android:value="false"/> - <!-- auto screen scale factor --> <!-- extract android style --> <!-- available android:values : * default - In most cases this will be the same as "full", but it can also be something else if needed, e.g., for compatibility reasons @@ -70,14 +93,13 @@ --> <meta-data android:name="android.app.extract_android_style" android:value="default"/> <!-- extract android style --> - <meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/logo"/> - <meta-data android:name="android.app.splash_screen_drawable_portrait" android:resource="@drawable/logo_portrait"/> - <meta-data android:name="android.app.splash_screen_drawable_landscape" android:resource="@drawable/logo_landscape"/> + <meta-data android:name="android.app.splash_screen_drawable" android:resource="@drawable/splashscreen"/> + <meta-data android:name="android.app.splash_screen_drawable_portrait" android:resource="@drawable/splashscreen_port"/> + <meta-data android:name="android.app.splash_screen_drawable_landscape" android:resource="@drawable/splashscreen_land"/> </activity> <!-- For adding service(s) please check: https://wiki.qt.io/AndroidServices --> </application> -<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> - <uses-permission android:name="android.permission.INTERNET"/> - <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> +<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> +<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> </manifest> diff --git a/HanoiTowers/client/android/build.gradle b/HanoiTowers/client/android/build.gradle.in similarity index 97% rename from HanoiTowers/client/android/build.gradle rename to HanoiTowers/client/android/build.gradle.in index fb15ae9..dc4feaa 100644 --- a/HanoiTowers/client/android/build.gradle +++ b/HanoiTowers/client/android/build.gradle.in @@ -75,6 +75,6 @@ android { resConfig "en" multiDexEnabled true minSdkVersion = 21 - targetSdkVersion = 31 + targetSdkVersion = @ANDROID_API_VERSION@ } }