diff --git a/.gitignore b/.gitignore
index c71e2e16..f6a88081 100644
--- a/.gitignore
+++ b/.gitignore
@@ -65,7 +65,7 @@ doc/doxygen_*
## Build files
CMakeFiles
Makefile
-!build/android/Makefile
+!build/android/deprecated/Makefile
cmake_install.cmake
CMakeCache.txt
CPackConfig.cmake
@@ -76,7 +76,6 @@ src/cmake_config.h
src/cmake_config_githash.h
src/lua/build/
locale/
-!games/*/*/*/locale
.directory
.gradle/
*.cbp
@@ -92,16 +91,12 @@ cmake-build-debug/
cmake-build-release/
## Android build files
-build/android/src/main/assets
build/android/build
-build/android/deps
-build/android/libs
-build/android/jni/lib
-build/android/jni/src
-build/android/src/main/jniLibs
-build/android/obj
+build/android/release
build/android/local.properties
build/android/.gradle
+build/android/app/src/main/assets
+build/android/app/build
build/android/native/build
build/android/native/deps
timestamp
@@ -111,15 +106,13 @@ timestamp
## iOS build files
build/iOS/MultiCraft/MultiCraft.xcodeproj/xcuserdata
build/iOS/MultiCraft/MultiCraft.xcodeproj/project.xcworkspace
-# build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/*.png
build/iOS/MultiCraft.xcworkspace
build/iOS/Pods
build/iOS/Podfile.lock
build/iOS/deps/*
!build/iOS/deps/*.sh
-build/iOS/assets.zip
-build/iOS/worlds.zip
+build/iOS/*.zip
build/iOS/Ads
## WindowsApp files
-build/WindowsApp/multicraft-windows.zip
+build/WindowsApp/*.zip
diff --git a/build/android/Start.sh b/build/android/Start.sh
index e2e5c999..7e7557cf 100755
--- a/build/android/Start.sh
+++ b/build/android/Start.sh
@@ -5,7 +5,7 @@ if [ ! -d gradle ]; then
exit 1
fi
-FOLDER=$(pwd)/src/main/assets
+FOLDER=$(pwd)/app/src/main/assets
DEST=$(mktemp -d)
echo
@@ -16,7 +16,7 @@ echo "=> Getting precompiled dependencies:"
if [ ! -d native/deps ]
then
echo
- git clone https://github.com/MultiCraft/deps native/deps
+ git clone --depth 1 https://github.com/MultiCraft/deps native/deps
echo
echo "* Done!"
else
diff --git a/build/android/app/build.gradle b/build/android/app/build.gradle
new file mode 100644
index 00000000..f3238ea3
--- /dev/null
+++ b/build/android/app/build.gradle
@@ -0,0 +1,67 @@
+apply plugin: 'com.android.application'
+android {
+ compileSdkVersion 29
+ buildToolsVersion "29.0.1"
+
+ defaultConfig {
+ applicationId 'com.multicraft.game'
+ minSdkVersion 16
+ targetSdkVersion 29
+ versionCode 1
+ }
+ Properties props = new Properties()
+ props.load(new FileInputStream(file('../local.properties')))
+
+ if (props.getProperty('keystore') != null) {
+ signingConfigs {
+ release {
+ storeFile file(props['keystore'])
+ storePassword props['keystore.password']
+ keyAlias props['key']
+ keyPassword props['key.password']
+ }
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ signingConfig signingConfigs.release
+ }
+ }
+ }
+
+// for multiple APKs
+ splits {
+ abi {
+ enable true
+ reset()
+ include 'armeabi-v7a', 'arm64-v8a'//, 'x86'
+ }
+ }
+}
+
+// Map for the version code that gives each ABI a value.
+/*import com.android.build.OutputFile
+
+def abiCodes = ['armeabi-v7a': 0, 'arm64-v8a': 1] //['armeabi-v7a': 0, 'arm64-v8a': 1, 'x86': 2*]
+android.applicationVariants.all { variant ->
+ variant.outputs.each {
+ output ->
+ def abiName = output.getFilter(OutputFile.ABI)
+ output.versionCodeOverride = abiCodes.get(abiName, 0) + variant.versionCode
+ }
+}*/
+
+dependencies {
+ // MultiCraft Native
+ implementation project(':native')
+ // Analytics libraries
+ implementation 'androidx.appcompat:appcompat:1.0.2'
+ implementation 'com.google.firebase:firebase-core:17.0.1'
+ implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
+ // Third-party libraries
+ implementation 'com.itlgl:iosdialog:1.0.0'
+ implementation 'gun0912.ted:tedpermission:2.2.2'
+ implementation group: 'commons-io', name: 'commons-io', version: '2.4'
+}
diff --git a/build/android/src/main/AndroidManifest.xml b/build/android/app/src/main/AndroidManifest.xml
similarity index 99%
rename from build/android/src/main/AndroidManifest.xml
rename to build/android/app/src/main/AndroidManifest.xml
index f4d7ac3c..111c8f18 100644
--- a/build/android/src/main/AndroidManifest.xml
+++ b/build/android/app/src/main/AndroidManifest.xml
@@ -8,8 +8,8 @@
-
+
diff --git a/build/android/src/main/java/com/multicraft/game/AlertDialogHelper.java b/build/android/app/src/main/java/com/multicraft/game/AlertDialogHelper.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/AlertDialogHelper.java
rename to build/android/app/src/main/java/com/multicraft/game/AlertDialogHelper.java
diff --git a/build/android/src/main/java/com/multicraft/game/CallBackListener.java b/build/android/app/src/main/java/com/multicraft/game/CallBackListener.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/CallBackListener.java
rename to build/android/app/src/main/java/com/multicraft/game/CallBackListener.java
diff --git a/build/android/src/main/java/com/multicraft/game/CheckConnectionTask.java b/build/android/app/src/main/java/com/multicraft/game/CheckConnectionTask.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/CheckConnectionTask.java
rename to build/android/app/src/main/java/com/multicraft/game/CheckConnectionTask.java
diff --git a/build/android/src/main/java/com/multicraft/game/CopyZipTask.java b/build/android/app/src/main/java/com/multicraft/game/CopyZipTask.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/CopyZipTask.java
rename to build/android/app/src/main/java/com/multicraft/game/CopyZipTask.java
diff --git a/build/android/src/main/java/com/multicraft/game/DeleteTask.java b/build/android/app/src/main/java/com/multicraft/game/DeleteTask.java
similarity index 92%
rename from build/android/src/main/java/com/multicraft/game/DeleteTask.java
rename to build/android/app/src/main/java/com/multicraft/game/DeleteTask.java
index eca4c899..ade054a6 100644
--- a/build/android/src/main/java/com/multicraft/game/DeleteTask.java
+++ b/build/android/app/src/main/java/com/multicraft/game/DeleteTask.java
@@ -41,7 +41,9 @@ public class DeleteTask extends AsyncTask {
File file = new File(path);
if (file.exists()) {
try {
+ if (file.isDirectory())
FileUtils.deleteDirectory(file);
+ else FileUtils.deleteQuietly(file);
} catch (IOException e) {
Crashlytics.logException(e);
}
diff --git a/build/android/src/main/java/com/multicraft/game/DialogsCallback.java b/build/android/app/src/main/java/com/multicraft/game/DialogsCallback.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/DialogsCallback.java
rename to build/android/app/src/main/java/com/multicraft/game/DialogsCallback.java
diff --git a/build/android/src/main/java/com/multicraft/game/GameActivity.java b/build/android/app/src/main/java/com/multicraft/game/GameActivity.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/GameActivity.java
rename to build/android/app/src/main/java/com/multicraft/game/GameActivity.java
diff --git a/build/android/src/main/java/com/multicraft/game/InputDialogActivity.java b/build/android/app/src/main/java/com/multicraft/game/InputDialogActivity.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/InputDialogActivity.java
rename to build/android/app/src/main/java/com/multicraft/game/InputDialogActivity.java
diff --git a/build/android/src/main/java/com/multicraft/game/MainActivity.java b/build/android/app/src/main/java/com/multicraft/game/MainActivity.java
similarity index 99%
rename from build/android/src/main/java/com/multicraft/game/MainActivity.java
rename to build/android/app/src/main/java/com/multicraft/game/MainActivity.java
index 5ded374e..5671d85f 100644
--- a/build/android/src/main/java/com/multicraft/game/MainActivity.java
+++ b/build/android/app/src/main/java/com/multicraft/game/MainActivity.java
@@ -21,7 +21,6 @@ import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.provider.Settings;
-import androidx.core.content.ContextCompat;
import android.text.method.LinkMovementMethod;
import android.view.ContextThemeWrapper;
import android.view.Display;
@@ -34,6 +33,8 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
+import androidx.core.content.ContextCompat;
+
import com.crashlytics.android.Crashlytics;
import com.gun0912.tedpermission.PermissionListener;
import com.gun0912.tedpermission.TedPermission;
@@ -61,7 +62,7 @@ public class MainActivity extends Activity implements WVersionManager.ActivityLi
private final static String WORLDS = EXTERNAL_STORAGE + "/worlds.zip";
private final static String GAMES = EXTERNAL_STORAGE + "/games.zip";
private final static String NOMEDIA = ".nomedia";
- private static final String UPDATE_LINK = "https://raw.githubusercontent.com/ubulem/coronahtml5/master/ver.txt";
+ private static final String UPDATE_LINK = "https://raw.githubusercontent.com/MoNTE48/MultiCraft-links/master/Android.json";
private static final String[] EU_COUNTRIES = new String[]{
"AT", "BE", "BG", "HR", "CY", "CZ",
"DK", "EE", "FI", "FR", "DE", "GR",
@@ -485,7 +486,7 @@ public class MainActivity extends Activity implements WVersionManager.ActivityLi
if (isAll) {
dt.execute(unzipLocation);
} else {
- dt.execute(unzipLocation + "builtin", unzipLocation + "games", unzipLocation + "textures"/*, unzipLocation + "debug.txt"*/);
+ dt.execute(unzipLocation + "builtin", unzipLocation + "games", unzipLocation + "debug.txt");
}
}
@@ -562,7 +563,7 @@ public class MainActivity extends Activity implements WVersionManager.ActivityLi
tv.setMovementMethod(LinkMovementMethod.getInstance());
}
- void showConnectionDialog() {
+ private void showConnectionDialog() {
AlertDialogHelper dialogHelper = new AlertDialogHelper(this);
dialogHelper.setListener(this);
dialogHelper.setMessage(getString(R.string.conn_message));
diff --git a/build/android/src/main/java/com/multicraft/game/PreferencesHelper.java b/build/android/app/src/main/java/com/multicraft/game/PreferencesHelper.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/PreferencesHelper.java
rename to build/android/app/src/main/java/com/multicraft/game/PreferencesHelper.java
diff --git a/build/android/src/main/java/com/multicraft/game/RateMe.java b/build/android/app/src/main/java/com/multicraft/game/RateMe.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/RateMe.java
rename to build/android/app/src/main/java/com/multicraft/game/RateMe.java
diff --git a/build/android/src/main/java/com/multicraft/game/Transliteration.java b/build/android/app/src/main/java/com/multicraft/game/Transliteration.java
similarity index 98%
rename from build/android/src/main/java/com/multicraft/game/Transliteration.java
rename to build/android/app/src/main/java/com/multicraft/game/Transliteration.java
index a1173c73..927b9874 100644
--- a/build/android/src/main/java/com/multicraft/game/Transliteration.java
+++ b/build/android/app/src/main/java/com/multicraft/game/Transliteration.java
@@ -56,7 +56,7 @@ class Transliteration {
* Не русские символы останутся прежними.
*/
static String toLatin(String text) {
- char[] charBuffer = text.toCharArray();
+ char[] charBuffer = text.toCharArray();
StringBuilder sb = new StringBuilder(text.length());
for (char symbol : charBuffer) {
int i = symbol - START_CHAR;
diff --git a/build/android/src/main/java/com/multicraft/game/UnzipService.java b/build/android/app/src/main/java/com/multicraft/game/UnzipService.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/UnzipService.java
rename to build/android/app/src/main/java/com/multicraft/game/UnzipService.java
diff --git a/build/android/src/main/java/com/multicraft/game/WVersionManager.java b/build/android/app/src/main/java/com/multicraft/game/WVersionManager.java
similarity index 100%
rename from build/android/src/main/java/com/multicraft/game/WVersionManager.java
rename to build/android/app/src/main/java/com/multicraft/game/WVersionManager.java
diff --git a/build/android/src/main/res/drawable/background.png b/build/android/app/src/main/res/drawable/background.png
similarity index 100%
rename from build/android/src/main/res/drawable/background.png
rename to build/android/app/src/main/res/drawable/background.png
diff --git a/build/android/src/main/res/drawable/bg.xml b/build/android/app/src/main/res/drawable/bg.xml
similarity index 100%
rename from build/android/src/main/res/drawable/bg.xml
rename to build/android/app/src/main/res/drawable/bg.xml
diff --git a/build/android/src/main/res/drawable/custom_progress_bar.xml b/build/android/app/src/main/res/drawable/custom_progress_bar.xml
similarity index 100%
rename from build/android/src/main/res/drawable/custom_progress_bar.xml
rename to build/android/app/src/main/res/drawable/custom_progress_bar.xml
diff --git a/build/android/app/src/main/res/drawable/ic_launcher_background.xml b/build/android/app/src/main/res/drawable/ic_launcher_background.xml
new file mode 100644
index 00000000..2408e30d
--- /dev/null
+++ b/build/android/app/src/main/res/drawable/ic_launcher_background.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/android/src/main/res/drawable/logo.png b/build/android/app/src/main/res/drawable/logo.png
similarity index 100%
rename from build/android/src/main/res/drawable/logo.png
rename to build/android/app/src/main/res/drawable/logo.png
diff --git a/build/android/src/main/res/drawable-xhdpi/update.png b/build/android/app/src/main/res/drawable/update.png
similarity index 100%
rename from build/android/src/main/res/drawable-xhdpi/update.png
rename to build/android/app/src/main/res/drawable/update.png
diff --git a/build/android/src/main/res/layout/activity_main.xml b/build/android/app/src/main/res/layout/activity_main.xml
similarity index 100%
rename from build/android/src/main/res/layout/activity_main.xml
rename to build/android/app/src/main/res/layout/activity_main.xml
diff --git a/build/android/src/main/res/layout/gdpr_dialog.xml b/build/android/app/src/main/res/layout/gdpr_dialog.xml
similarity index 100%
rename from build/android/src/main/res/layout/gdpr_dialog.xml
rename to build/android/app/src/main/res/layout/gdpr_dialog.xml
diff --git a/build/android/src/main/res/layout/input_dialog.xml b/build/android/app/src/main/res/layout/input_dialog.xml
similarity index 100%
rename from build/android/src/main/res/layout/input_dialog.xml
rename to build/android/app/src/main/res/layout/input_dialog.xml
diff --git a/build/android/src/main/res/layout/rate_dialog.xml b/build/android/app/src/main/res/layout/rate_dialog.xml
similarity index 100%
rename from build/android/src/main/res/layout/rate_dialog.xml
rename to build/android/app/src/main/res/layout/rate_dialog.xml
diff --git a/build/android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
similarity index 66%
rename from build/android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
rename to build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
index c9ad5f98..c4a603d4 100644
--- a/build/android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
+++ b/build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -1,5 +1,5 @@
-
-
+
+
\ No newline at end of file
diff --git a/build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
new file mode 100644
index 00000000..c4a603d4
--- /dev/null
+++ b/build/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..ecbdcd5e
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png differ
diff --git a/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 00000000..772607ba
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..9f5a4c61
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 00000000..a4ae54bd
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..3bec2ac1
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..9be1a572
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..b5f3c6c2
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..e2db1dfb
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..52588795
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..675fb605
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/build/android/app/src/main/res/mipmap/ic_launcher.png b/build/android/app/src/main/res/mipmap/ic_launcher.png
new file mode 100644
index 00000000..42c24d58
Binary files /dev/null and b/build/android/app/src/main/res/mipmap/ic_launcher.png differ
diff --git a/build/android/src/main/res/values-ru/strings.xml b/build/android/app/src/main/res/values-ru/strings.xml
similarity index 89%
rename from build/android/src/main/res/values-ru/strings.xml
rename to build/android/app/src/main/res/values-ru/strings.xml
index 49c798d1..50502476 100644
--- a/build/android/src/main/res/values-ru/strings.xml
+++ b/build/android/app/src/main/res/values-ru/strings.xml
@@ -13,7 +13,7 @@
Доступ к местоположению обеспечивает Вам лучшее взаимодействие с игрой
Закрыть игру
Настройки
- Вы не можете использовать MultiCraft без разрешения на запись. \nПожалуйста, включите его в [Настройки] -> [Разрешения]>
+ Вы не можете играть в MultiCraft без разрешения на запись. \nПожалуйста, включите его в [Настройки] -> [Разрешения]>
Оцените MultiCraft!
Название
@@ -25,8 +25,6 @@
Позже
Обновить
-
-
Для полноценной игры, MultiCraft требует подключение к интернету.\nВ противном случае невозможно обновление игры, а так же не доступен мультиплеер!
Wi-Fi
diff --git a/build/android/src/main/res/values-v21/styles.xml b/build/android/app/src/main/res/values-v21/styles.xml
similarity index 100%
rename from build/android/src/main/res/values-v21/styles.xml
rename to build/android/app/src/main/res/values-v21/styles.xml
diff --git a/build/android/src/main/res/values/ic_launcher_background.xml b/build/android/app/src/main/res/values/ic_launcher_background.xml
similarity index 100%
rename from build/android/src/main/res/values/ic_launcher_background.xml
rename to build/android/app/src/main/res/values/ic_launcher_background.xml
diff --git a/build/android/src/main/res/values/strings.xml b/build/android/app/src/main/res/values/strings.xml
similarity index 93%
rename from build/android/src/main/res/values/strings.xml
rename to build/android/app/src/main/res/values/strings.xml
index 6e710644..ce163ec1 100644
--- a/build/android/src/main/res/values/strings.xml
+++ b/build/android/app/src/main/res/values/strings.xml
@@ -17,7 +17,7 @@
Location permission provide you better interaction with game
Close game
App settings
- You cannot use MultiCraft without storage permission. \nPlease turn on it at [Settings] -> [Permissions]>
+ You cannot play MultiCraft without storage permission. \nPlease turn on it at [Settings] -> [Permissions]>
Please, rate MultiCraft!
Title
@@ -30,8 +30,6 @@
Later
Ignore
-
-
MultiCraft requires an internet connection to use all game features.\nOtherwise, you will not get updates and multiplayer will be not available!
Wi-Fi
diff --git a/build/android/src/main/res/values/styles.xml b/build/android/app/src/main/res/values/styles.xml
similarity index 100%
rename from build/android/src/main/res/values/styles.xml
rename to build/android/app/src/main/res/values/styles.xml
diff --git a/build/android/src/main/res/xml/my_backup_rules.xml b/build/android/app/src/main/res/xml/my_backup_rules.xml
similarity index 100%
rename from build/android/src/main/res/xml/my_backup_rules.xml
rename to build/android/app/src/main/res/xml/my_backup_rules.xml
diff --git a/build/android/src/main/res/xml/network_security_config.xml b/build/android/app/src/main/res/xml/network_security_config.xml
similarity index 100%
rename from build/android/src/main/res/xml/network_security_config.xml
rename to build/android/app/src/main/res/xml/network_security_config.xml
diff --git a/build/android/build.gradle b/build/android/build.gradle
index cf6c50d1..5006f310 100644
--- a/build/android/build.gradle
+++ b/build/android/build.gradle
@@ -1,3 +1,5 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+
buildscript {
repositories {
google()
@@ -8,6 +10,8 @@ buildscript {
classpath 'com.android.tools.build:gradle:3.4.2'
classpath 'com.google.gms:google-services:4.3.0'
classpath 'io.fabric.tools:gradle:1.29.0'
+ // NOTE: Do not place your application dependencies here; they belong
+ // in the individual module build.gradle files
}
}
@@ -15,76 +19,10 @@ allprojects {
repositories {
google()
jcenter()
+ flatDir { dirs 'libs-aar' }
}
}
-apply plugin: 'com.android.application'
-android {
- compileSdkVersion 29
- buildToolsVersion "29.0.1"
-
- defaultConfig {
- applicationId 'com.multicraft.game'
- minSdkVersion 16
- targetSdkVersion 29
- versionCode 1
- }
- Properties props = new Properties()
- props.load(new FileInputStream(file("local.properties")))
-
- if (props.getProperty("keystore") != null) {
- signingConfigs {
- release {
- storeFile file(props["keystore"])
- storePassword props["keystore.password"]
- keyAlias props["key"]
- keyPassword props["key.password"]
- }
- }
-
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
- signingConfig signingConfigs.release
- }
- }
- }
-// for multiple APKs
- splits {
- abi {
- enable true
- reset()
- include "armeabi-v7a", "arm64-v8a" /*, "x86"*/
- }
- }
-}
-
-// build multiple APKs for all ABI
-ext.abiCodes = ['armeabi-v7a': 0, 'arm64-v8a': 1, 'x86': 2]
-import com.android.build.OutputFile
-
-android.applicationVariants.all { variant ->
- variant.outputs.each { output ->
- def baseAbiVersionCode =
- project.ext.abiCodes.get(output.getFilter(OutputFile.ABI))
- if (baseAbiVersionCode != null) {
- output.versionCodeOverride =
- baseAbiVersionCode + variant.versionCode
- }
- }
-}
-
-dependencies {
- implementation project(":native")
-}
-
-dependencies {
- implementation 'androidx.appcompat:appcompat:1.0.2'
- implementation 'com.google.firebase:firebase-core:17.0.0'
- implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
- // Third-party libraries
- implementation 'com.itlgl:iosdialog:1.0.0'
- implementation 'gun0912.ted:tedpermission:2.2.2'
- implementation group: 'commons-io', name: 'commons-io', version: '2.4'
-}
+task clean(type: Delete) {
+ delete rootProject.buildDir
+}
\ No newline at end of file
diff --git a/build/android/Makefile b/build/android/deprecated/Makefile
similarity index 100%
rename from build/android/Makefile
rename to build/android/deprecated/Makefile
diff --git a/build/android/jni/Deps.mk b/build/android/deprecated/jni/Deps.mk
similarity index 100%
rename from build/android/jni/Deps.mk
rename to build/android/deprecated/jni/Deps.mk
diff --git a/build/android/jni/Irrlicht.mk b/build/android/deprecated/jni/Irrlicht.mk
similarity index 100%
rename from build/android/jni/Irrlicht.mk
rename to build/android/deprecated/jni/Irrlicht.mk
diff --git a/build/android/patches/irrlicht-back_button.patch b/build/android/deprecated/patches/irrlicht-back_button.patch
similarity index 97%
rename from build/android/patches/irrlicht-back_button.patch
rename to build/android/deprecated/patches/irrlicht-back_button.patch
index e17b8134..fa5d446b 100644
--- a/build/android/patches/irrlicht-back_button.patch
+++ b/build/android/deprecated/patches/irrlicht-back_button.patch
@@ -1,20 +1,20 @@
--- irrlicht/source/Irrlicht/Android/CIrrDeviceAndroid.cpp.orig 2015-08-29 15:43:09.000000000 +0300
+++ irrlicht/source/Irrlicht/Android/CIrrDeviceAndroid.cpp 2016-05-13 21:36:22.880388505 +0300
@@ -486,7 +486,7 @@
- event.KeyInput.Char = 0;
- }
-
-- device->postEventFromUser(event);
-+ status = device->postEventFromUser(event);
- }
- break;
- default:
+ event.KeyInput.Char = 0;
+ }
+
+- device->postEventFromUser(event);
++ status = device->postEventFromUser(event);
+ }
+ break;
+ default:
@@ -543,7 +543,7 @@
- KeyMap[1] = KEY_LBUTTON; // AKEYCODE_SOFT_LEFT
- KeyMap[2] = KEY_RBUTTON; // AKEYCODE_SOFT_RIGHT
- KeyMap[3] = KEY_HOME; // AKEYCODE_HOME
-- KeyMap[4] = KEY_BACK; // AKEYCODE_BACK
-+ KeyMap[4] = KEY_CANCEL; // AKEYCODE_BACK
- KeyMap[5] = KEY_UNKNOWN; // AKEYCODE_CALL
- KeyMap[6] = KEY_UNKNOWN; // AKEYCODE_ENDCALL
- KeyMap[7] = KEY_KEY_0; // AKEYCODE_0
+ KeyMap[1] = KEY_LBUTTON; // AKEYCODE_SOFT_LEFT
+ KeyMap[2] = KEY_RBUTTON; // AKEYCODE_SOFT_RIGHT
+ KeyMap[3] = KEY_HOME; // AKEYCODE_HOME
+- KeyMap[4] = KEY_BACK; // AKEYCODE_BACK
++ KeyMap[4] = KEY_CANCEL; // AKEYCODE_BACK
+ KeyMap[5] = KEY_UNKNOWN; // AKEYCODE_CALL
+ KeyMap[6] = KEY_UNKNOWN; // AKEYCODE_ENDCALL
+ KeyMap[7] = KEY_KEY_0; // AKEYCODE_0
diff --git a/build/android/patches/irrlicht-native_activity.patch b/build/android/deprecated/patches/irrlicht-native_activity.patch
similarity index 97%
rename from build/android/patches/irrlicht-native_activity.patch
rename to build/android/deprecated/patches/irrlicht-native_activity.patch
index 74a6f5e4..7288a0db 100644
--- a/build/android/patches/irrlicht-native_activity.patch
+++ b/build/android/deprecated/patches/irrlicht-native_activity.patch
@@ -1,12 +1,12 @@
--- irrlicht/source/Irrlicht/CEGLManager.cpp.orig 2018-04-24 19:27:51.034727946 +0200
+++ irrlicht/source/Irrlicht/CEGLManager.cpp 2018-04-24 19:27:55.084614618 +0200
@@ -8,6 +8,9 @@
-
- #include "irrString.h"
- #include "os.h"
-+#if defined(_IRR_COMPILE_WITH_ANDROID_DEVICE_)
-+#include
-+#endif
-
- namespace irr
- {
+
+ #include "irrString.h"
+ #include "os.h"
++#if defined(_IRR_COMPILE_WITH_ANDROID_DEVICE_)
++#include
++#endif
+
+ namespace irr
+ {
diff --git a/build/android/patches/irrlicht-roundingerror.patch b/build/android/deprecated/patches/irrlicht-roundingerror.patch
similarity index 96%
rename from build/android/patches/irrlicht-roundingerror.patch
rename to build/android/deprecated/patches/irrlicht-roundingerror.patch
index f1692595..9787eaa9 100644
--- a/build/android/patches/irrlicht-roundingerror.patch
+++ b/build/android/deprecated/patches/irrlicht-roundingerror.patch
@@ -1,15 +1,15 @@
--- irrlicht/include/irrMath.h.orig 2019-04-01 22:16:52.000000000 +0200
+++ irrlicht/include/irrMath.h 2019-04-01 22:22:52.000000000 +0200
@@ -198,6 +198,12 @@
- }
-
- template <>
-+ inline s16 roundingError()
-+ {
-+ return 0;
-+ }
-+
-+ template <>
- inline s32 roundingError()
- {
- return ROUNDING_ERROR_S32;
+ }
+
+ template <>
++ inline s16 roundingError()
++ {
++ return 0;
++ }
++
++ template <>
+ inline s32 roundingError()
+ {
+ return ROUNDING_ERROR_S32;
diff --git a/build/android/patches/irrlicht-touchcount.patch b/build/android/deprecated/patches/irrlicht-touchcount.patch
similarity index 98%
rename from build/android/patches/irrlicht-touchcount.patch
rename to build/android/deprecated/patches/irrlicht-touchcount.patch
index d4e4b9c3..f0c3db67 100644
--- a/build/android/patches/irrlicht-touchcount.patch
+++ b/build/android/deprecated/patches/irrlicht-touchcount.patch
@@ -1,30 +1,30 @@
--- irrlicht.orig/include/IEventReceiver.h 2014-06-03 19:43:50.433713133 +0200
+++ irrlicht/include/IEventReceiver.h 2014-06-03 19:44:36.993711489 +0200
@@ -375,6 +375,9 @@
- // Y position of simple touch.
- s32 Y;
-
-+ // number of current touches
-+ s32 touchedCount;
-+
- //! Type of touch event.
- ETOUCH_INPUT_EVENT Event;
- };
+ // Y position of simple touch.
+ s32 Y;
+
++ // number of current touches
++ s32 touchedCount;
++
+ //! Type of touch event.
+ ETOUCH_INPUT_EVENT Event;
+ };
--- irrlicht.orig/source/Irrlicht/Android/CIrrDeviceAndroid.cpp 2014-06-03 19:43:50.505713130 +0200
+++ irrlicht/source/Irrlicht/Android/CIrrDeviceAndroid.cpp 2014-06-03 19:45:37.265709359 +0200
@@ -315,6 +315,7 @@
- event.TouchInput.ID = AMotionEvent_getPointerId(androidEvent, i);
- event.TouchInput.X = AMotionEvent_getX(androidEvent, i);
- event.TouchInput.Y = AMotionEvent_getY(androidEvent, i);
-+ event.TouchInput.touchedCount = AMotionEvent_getPointerCount(androidEvent);
-
- device->postEventFromUser(event);
- }
+ event.TouchInput.ID = AMotionEvent_getPointerId(androidEvent, i);
+ event.TouchInput.X = AMotionEvent_getX(androidEvent, i);
+ event.TouchInput.Y = AMotionEvent_getY(androidEvent, i);
++ event.TouchInput.touchedCount = AMotionEvent_getPointerCount(androidEvent);
+
+ device->postEventFromUser(event);
+ }
@@ -326,6 +327,7 @@
- event.TouchInput.ID = AMotionEvent_getPointerId(androidEvent, pointerIndex);
- event.TouchInput.X = AMotionEvent_getX(androidEvent, pointerIndex);
- event.TouchInput.Y = AMotionEvent_getY(androidEvent, pointerIndex);
-+ event.TouchInput.touchedCount = AMotionEvent_getPointerCount(androidEvent);
-
- device->postEventFromUser(event);
- }
+ event.TouchInput.ID = AMotionEvent_getPointerId(androidEvent, pointerIndex);
+ event.TouchInput.X = AMotionEvent_getX(androidEvent, pointerIndex);
+ event.TouchInput.Y = AMotionEvent_getY(androidEvent, pointerIndex);
++ event.TouchInput.touchedCount = AMotionEvent_getPointerCount(androidEvent);
+
+ device->postEventFromUser(event);
+ }
diff --git a/build/android/patches/libiconv_android.patch b/build/android/deprecated/patches/libiconv_android.patch
similarity index 100%
rename from build/android/patches/libiconv_android.patch
rename to build/android/deprecated/patches/libiconv_android.patch
diff --git a/build/android/native/build.gradle b/build/android/native/build.gradle
index 550ecfe6..5593bcb9 100644
--- a/build/android/native/build.gradle
+++ b/build/android/native/build.gradle
@@ -7,17 +7,17 @@ android {
targetSdkVersion 29
externalNativeBuild {
ndkBuild {
- arguments "-j12",
- "APP_STL=c++_shared",
- "COMPILER_VERSION=clang",
- "APP_SHORT_COMMANDS=true"
+ arguments '-j12',
+ 'APP_STL=c++_shared',
+ 'COMPILER_VERSION=clang',
+ 'APP_SHORT_COMMANDS=true'
}
}
}
externalNativeBuild {
ndkBuild {
- path file("jni/Android.mk")
+ path file('jni/Android.mk')
}
}
@@ -26,12 +26,16 @@ android {
abi {
enable true
reset()
- include "armeabi-v7a", "arm64-v8a" /*, "x86"*/
+ include 'armeabi-v7a', 'arm64-v8a'//, 'x86'*/
}
}
buildTypes {
- debug {
- debuggable = false
+ release {
+ externalNativeBuild {
+ ndkBuild {
+ arguments 'NDEBUG=1'
+ }
+ }
}
}
}
diff --git a/build/android/native/jni/Android.mk b/build/android/native/jni/Android.mk
index 9193d1a5..72896739 100644
--- a/build/android/native/jni/Android.mk
+++ b/build/android/native/jni/Android.mk
@@ -306,14 +306,14 @@ LOCAL_SRC_FILES += \
deps/Android/libiconv/libcharset/lib/localcharset.c
# GMP
-ifneq ($(APP_ABI),arm64-v8a)
+#ifneq ($(APP_ABI),arm64-v8a)
LOCAL_C_INCLUDES += ../../../lib/gmp
LOCAL_SRC_FILES += ../../../lib/gmp/mini-gmp.c
-else
- LOCAL_CFLAGS += -DUSE_SYSTEM_GMP=1
- LOCAL_C_INCLUDES += deps/Android/gmp/include
- LOCAL_STATIC_LIBRARIES := gmp
-endif
+#else
+# LOCAL_CFLAGS += -DUSE_SYSTEM_GMP=1
+# LOCAL_C_INCLUDES += deps/Android/gmp/include
+# LOCAL_STATIC_LIBRARIES := gmp
+#endif
LOCAL_STATIC_LIBRARIES += Irrlicht LevelDB Curl Freetype OpenAL Vorbis LuaJIT android_native_app_glue $(PROFILER_LIBS)
diff --git a/build/android/settings.gradle b/build/android/settings.gradle
index df0e3ee9..678748ae 100644
--- a/build/android/settings.gradle
+++ b/build/android/settings.gradle
@@ -1 +1 @@
-include ':native'
+include ':app', ':native'
diff --git a/build/android/src/main/res/mipmap/ic_launcher.png b/build/android/src/main/res/mipmap/ic_launcher.png
deleted file mode 100644
index 17732489..00000000
Binary files a/build/android/src/main/res/mipmap/ic_launcher.png and /dev/null differ
diff --git a/build/android/src/main/res/mipmap/ic_launcher_foreground.png b/build/android/src/main/res/mipmap/ic_launcher_foreground.png
deleted file mode 100644
index 2b43af5d..00000000
Binary files a/build/android/src/main/res/mipmap/ic_launcher_foreground.png and /dev/null differ