Skip to content

Commit

Permalink
#133 Adapt to Android 14: done in premium version
Browse files Browse the repository at this point in the history
  • Loading branch information
mkulesh committed Mar 19, 2024
1 parent 29a4d30 commit 7209b6c
Show file tree
Hide file tree
Showing 10 changed files with 35 additions and 50 deletions.
6 changes: 3 additions & 3 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
6 changes: 6 additions & 0 deletions app/src/main/assets/release_notes.mmt
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@
<text_fragment textStyle="subsection">
<term key="text" text="Current release:" />
</text_fragment>
<text_fragment numbering="true">
<term key="text" text="The app is adapted for Android 14" />
</text_fragment>
<text_fragment textStyle="subsection">
<term key="text" text="Version 2.23.1" />
</text_fragment>
<text_fragment numbering="true">
<term key="text" text='Added "solve" function to find a&#10;root of an one-dimensional equation:' />
</text_fragment>
Expand Down
9 changes: 2 additions & 7 deletions app/src/main/java/com/mkulesh/micromath/MainActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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())
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ public void readSource(Uri tmp_uri, String pbod)
items = null;
ArrayList<Item> ia = new ArrayList<>();

if (CompatUtils.manageExternalStorage())
if (!CompatUtils.isROrLater())
{
ia.add(makeItem(LOCAL, AdapterFileSystem.ORG_SCHEME));

Expand Down
23 changes: 2 additions & 21 deletions app/src/main/java/com/mkulesh/micromath/utils/CompatUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -48,13 +46,6 @@
@SuppressLint("NewApi")
public class CompatUtils
{
public static boolean manageExternalStorage()
{
// Processing of permission:
// <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" tools:ignore="ScopedStorage" />
return !isROrLater();
}

public static boolean isMarshMallowOrLater()
{
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M;
Expand Down Expand Up @@ -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())
{
Expand Down
13 changes: 7 additions & 6 deletions app/src/main/res/layout/dialog_base.xml
Original file line number Diff line number Diff line change
Expand Up @@ -75,23 +75,24 @@
android:orientation="horizontal" >

<androidx.appcompat.widget.AppCompatButton
android:id="@+id/dialog_button_ok"
android:id="@+id/dialog_button_cancel"
style="@style/DialogTextButtonStyle"
android:layout_marginBottom="@dimen/dialog_buttons_margin"
android:drawableLeft="@drawable/ic_action_navigation_accept"
android:text="@string/dialog_navigation_accept" />
android:drawableLeft="@drawable/ic_action_navigation_cancel"
android:text="@string/dialog_navigation_cancel" />

<View
android:id="@+id/dialog_button_devider"
style="@style/VerticalDividerStyle"
android:layout_marginBottom="@dimen/dialog_buttons_margin" />

<androidx.appcompat.widget.AppCompatButton
android:id="@+id/dialog_button_cancel"
android:id="@+id/dialog_button_ok"
style="@style/DialogTextButtonStyle"
android:layout_marginBottom="@dimen/dialog_buttons_margin"
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" />

</LinearLayout>
</LinearLayout>
</LinearLayout>
Expand Down
14 changes: 7 additions & 7 deletions autotest/run-emulator.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,34 +10,34 @@ 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
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}

Expand Down
8 changes: 5 additions & 3 deletions autotest/run-session.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -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 {
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -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

0 comments on commit 7209b6c

Please sign in to comment.