diff --git a/app/build.gradle b/app/build.gradle
index b9710e3b..2f1075e7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -5,12 +5,12 @@ apply plugin: 'com.android.application'
// sdk/build-tools/32.0.0]# ln -s d8 dx
// sdk/build-tools/32.0.0/lib]# ln -s d8.jar dx.jar
android {
- compileSdkVersion 32
- buildToolsVersion "32.0.0"
+ compileSdkVersion 34
+ buildToolsVersion "34.0.0"
defaultConfig {
applicationId "com.mkulesh.micromath.plus"
minSdkVersion 14
- targetSdkVersion 32
+ targetSdkVersion 34
versionCode 324
versionName "2.23.2"
setProperty("archivesBaseName", "microMathematics-v" + versionName)
diff --git a/app/src/main/assets/release_notes.mmt b/app/src/main/assets/release_notes.mmt
old mode 100644
new mode 100755
index a1fffb19..9331cbad
--- a/app/src/main/assets/release_notes.mmt
+++ b/app/src/main/assets/release_notes.mmt
@@ -4,6 +4,12 @@
+
+
+
+
+
+
diff --git a/app/src/main/java/com/mkulesh/micromath/MainActivity.java b/app/src/main/java/com/mkulesh/micromath/MainActivity.java
index ed4f7ae3..aa005cd0 100644
--- a/app/src/main/java/com/mkulesh/micromath/MainActivity.java
+++ b/app/src/main/java/com/mkulesh/micromath/MainActivity.java
@@ -24,7 +24,6 @@
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
-import android.os.Environment;
import android.os.Parcelable;
import android.view.Menu;
import android.view.MenuItem;
@@ -677,13 +676,9 @@ public boolean checkStoragePermission(int action)
}
storagePermissionAction = action;
- if (CompatUtils.isROrLater() && CompatUtils.manageExternalStorage())
+ if (CompatUtils.isROrLater())
{
- if (storagePermissionDialog == null && !Environment.isExternalStorageManager())
- {
- showPermissionDialog(action);
- return false;
- }
+ return true;
}
else if (CompatUtils.isMarshMallowOrLater())
{
diff --git a/app/src/main/java/com/mkulesh/micromath/fman/AdapterHome.java b/app/src/main/java/com/mkulesh/micromath/fman/AdapterHome.java
index ce362866..e8f0ad90 100644
--- a/app/src/main/java/com/mkulesh/micromath/fman/AdapterHome.java
+++ b/app/src/main/java/com/mkulesh/micromath/fman/AdapterHome.java
@@ -101,7 +101,7 @@ public void readSource(Uri tmp_uri, String pbod)
items = null;
ArrayList- ia = new ArrayList<>();
- if (CompatUtils.manageExternalStorage())
+ if (!CompatUtils.isROrLater())
{
ia.add(makeItem(LOCAL, AdapterFileSystem.ORG_SCHEME));
diff --git a/app/src/main/java/com/mkulesh/micromath/utils/CompatUtils.java b/app/src/main/java/com/mkulesh/micromath/utils/CompatUtils.java
index 9f2e8402..958519ee 100644
--- a/app/src/main/java/com/mkulesh/micromath/utils/CompatUtils.java
+++ b/app/src/main/java/com/mkulesh/micromath/utils/CompatUtils.java
@@ -19,11 +19,9 @@
import android.content.Intent;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
-import android.net.Uri;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Environment;
-import android.provider.Settings;
import android.util.TypedValue;
import android.view.View;
import android.widget.ImageView;
@@ -48,13 +46,6 @@
@SuppressLint("NewApi")
public class CompatUtils
{
- public static boolean manageExternalStorage()
- {
- // Processing of permission:
- //
- return !isROrLater();
- }
-
public static boolean isMarshMallowOrLater()
{
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M;
@@ -266,19 +257,9 @@ public static File getStorageFile(final @NonNull Context context, final @NonNull
public static void requestStoragePermission(AppCompatActivity a, int reqId)
{
- if (isROrLater() && manageExternalStorage())
+ if (isROrLater())
{
- ViewUtils.Debug(a, "requesting storage permissions for Android R");
- Intent in = new Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION);
- in.setData(Uri.parse("package:" + a.getApplicationContext().getPackageName()));
- try
- {
- a.startActivity(in);
- }
- catch (Exception e)
- {
- ViewUtils.Debug(a, "requesting storage permissions failed: " + e.getLocalizedMessage());
- }
+ // nothing to do
}
else if (isMarshMallowOrLater())
{
diff --git a/app/src/main/res/layout/dialog_base.xml b/app/src/main/res/layout/dialog_base.xml
index f3107b3d..54a27cae 100644
--- a/app/src/main/res/layout/dialog_base.xml
+++ b/app/src/main/res/layout/dialog_base.xml
@@ -75,11 +75,11 @@
android:orientation="horizontal" >
+ android:drawableLeft="@drawable/ic_action_navigation_cancel"
+ android:text="@string/dialog_navigation_cancel" />
+ android:drawableLeft="@drawable/ic_action_navigation_accept"
+ android:text="@string/dialog_navigation_accept" />
+
diff --git a/autotest/run-emulator.sh b/autotest/run-emulator.sh
index 2ae45eaf..2127d14d 100755
--- a/autotest/run-emulator.sh
+++ b/autotest/run-emulator.sh
@@ -10,6 +10,7 @@ setenv APK_FILE ${2}
setenv APK_DATA ${3}
setenv APK_FLAG ${4}
+setenv EMU_FLAG ${5}
setenv TOOLS_PATH ${ANDROID_HOME}/tools
setenv EMU_PORT 5558
@@ -17,27 +18,26 @@ setenv DEVICE_NAME emulator-${EMU_PORT}
setenv ADB_CMD "adb -s ${DEVICE_NAME}"
echo ================================================================================
-echo Starting ${EMU_NAME} on port ${EMU_PORT}...
+echo Starting ${EMU_NAME} on port ${EMU_PORT} with flag ${EMU_FLAG}...
echo ================================================================================
adb kill-server
adb start-server
-${ANDROID_HOME}/emulator/emulator -avd ${EMU_NAME} -no-boot-anim -port ${EMU_PORT} &
+${ANDROID_HOME}/emulator/emulator ${EMU_FLAG} -no-snapshot -avd ${EMU_NAME} -no-boot-anim -port ${EMU_PORT} &
-# waiting until boot_completed
+echo Waiting until boot is completed...
while ("`${ADB_CMD} wait-for-device shell getprop sys.boot_completed | tr -d '\r' `" != "1")
sleep 1
end
-sleep 1
+sleep 10
# actual device
-adb devices
-adb root
+${ADB_CMD} root
echo Uninstalling ${APK_PACK}...
${ADB_CMD} uninstall ${APK_PACK}
${ADB_CMD} shell pm list packages | grep ${APK_PACK}
-echo Installing ${APK_FILE}...
+echo Installing ${APK_FILE} with flag ${APK_FLAG}...
${ADB_CMD} install -r ${APK_FLAG} ${APK_FILE}
${ADB_CMD} shell pm list packages | grep ${APK_PACK}
diff --git a/autotest/run-session.sh b/autotest/run-session.sh
index bdcabaae..b000628b 100755
--- a/autotest/run-session.sh
+++ b/autotest/run-session.sh
@@ -20,9 +20,11 @@ echo APK to be tested: ${1}
./run-emulator.sh android_8.1.0 ${1} /sdcard/Android/data -g
./run-emulator.sh android_9.0.0 ${1} /sdcard/Android/data -g
./run-emulator.sh android_10.0.0 ${1} /sdcard/Android/data -g
-./run-emulator.sh android_11.0.0 ${1} /data/user/0 -g
-./run-emulator.sh android_12.0.0 ${1} /data/user/0 -g
-./run-emulator.sh android_12.1.0 ${1} /data/user/0 -g
+./run-emulator.sh android_11.0.0 ${1} /data/user/0 -g -delay-adb
+./run-emulator.sh android_12.0.0 ${1} /data/user/0 -g -delay-adb
+./run-emulator.sh android_12.1.0 ${1} /data/user/0 -g -delay-adb
+./run-emulator.sh android_13.0.0 ${1} /data/user/0 -g -delay-adb
+./run-emulator.sh android_14.0.0 ${1} /data/user/0 -g -delay-adb
firefox *.html
diff --git a/build.gradle b/build.gradle
index 5fb2557b..dae3fd10 100644
--- a/build.gradle
+++ b/build.gradle
@@ -6,7 +6,7 @@ buildscript {
}
dependencies {
//noinspection AndroidGradlePluginVersion
- classpath 'com.android.tools.build:gradle:4.2.0'
+ classpath 'com.android.tools.build:gradle:7.2.2'
}
}
allprojects {
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index be4c4703..ce8bc2f7 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip