diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index a3e3d0602..b629610d8 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -5,21 +5,13 @@
android:installLocation="auto">
-
-
-
diff --git a/android/app/src/main/java/net/minetest/minetest/MainActivity.java b/android/app/src/main/java/net/minetest/minetest/MainActivity.java
index 7678bbb01..d942e93e3 100644
--- a/android/app/src/main/java/net/minetest/minetest/MainActivity.java
+++ b/android/app/src/main/java/net/minetest/minetest/MainActivity.java
@@ -20,38 +20,24 @@ with this program; if not, write to the Free Software Foundation, Inc.,
package net.minetest.minetest;
-import android.Manifest;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
-import android.content.pm.PackageManager;
-import android.os.Build;
import android.os.Bundle;
-import android.os.Environment;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
-import androidx.annotation.NonNull;
import androidx.annotation.StringRes;
import androidx.appcompat.app.AppCompatActivity;
-import androidx.core.app.ActivityCompat;
-import androidx.core.content.ContextCompat;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
import static net.minetest.minetest.UnzipService.*;
public class MainActivity extends AppCompatActivity {
private final static int versionCode = BuildConfig.VERSION_CODE;
- private final static int PERMISSIONS = 1;
- private static final String[] REQUIRED_SDK_PERMISSIONS =
- new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE};
private static final String SETTINGS = "MinetestSettings";
private static final String TAG_VERSION_CODE = "versionCode";
@@ -100,58 +86,10 @@ public class MainActivity extends AppCompatActivity {
mProgressBar = findViewById(R.id.progressBar);
mTextView = findViewById(R.id.textView);
sharedPreferences = getSharedPreferences(SETTINGS, Context.MODE_PRIVATE);
-
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
- Build.VERSION.SDK_INT < Build.VERSION_CODES.R)
- checkPermission();
- else
- checkAppVersion();
- }
-
- private void checkPermission() {
- final List missingPermissions = new ArrayList<>();
- for (final String permission : REQUIRED_SDK_PERMISSIONS) {
- final int result = ContextCompat.checkSelfPermission(this, permission);
- if (result != PackageManager.PERMISSION_GRANTED)
- missingPermissions.add(permission);
- }
- if (!missingPermissions.isEmpty()) {
- final String[] permissions = missingPermissions
- .toArray(new String[0]);
- ActivityCompat.requestPermissions(this, permissions, PERMISSIONS);
- } else {
- final int[] grantResults = new int[REQUIRED_SDK_PERMISSIONS.length];
- Arrays.fill(grantResults, PackageManager.PERMISSION_GRANTED);
- onRequestPermissionsResult(PERMISSIONS, REQUIRED_SDK_PERMISSIONS, grantResults);
- }
- }
-
- @Override
- public void onRequestPermissionsResult(
- int requestCode,
- @NonNull String[] permissions,
- @NonNull int[] grantResults
- ) {
- super.onRequestPermissionsResult(requestCode, permissions, grantResults);
- if (requestCode == PERMISSIONS) {
- for (int grantResult : grantResults) {
- if (grantResult != PackageManager.PERMISSION_GRANTED) {
- Toast.makeText(this, R.string.not_granted, Toast.LENGTH_LONG).show();
- finish();
- return;
- }
- }
- checkAppVersion();
- }
+ checkAppVersion();
}
private void checkAppVersion() {
- if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
- Toast.makeText(this, R.string.no_external_storage, Toast.LENGTH_LONG).show();
- finish();
- return;
- }
-
if (UnzipService.getIsRunning()) {
mProgressBar.setVisibility(View.VISIBLE);
mProgressBar.setIndeterminate(true);
diff --git a/android/app/src/main/java/net/minetest/minetest/UnzipService.java b/android/app/src/main/java/net/minetest/minetest/UnzipService.java
index dedb85cdd..8c293fa89 100644
--- a/android/app/src/main/java/net/minetest/minetest/UnzipService.java
+++ b/android/app/src/main/java/net/minetest/minetest/UnzipService.java
@@ -28,7 +28,6 @@ import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
-import android.os.Environment;
import android.util.Log;
import androidx.annotation.NonNull;
@@ -88,7 +87,6 @@ public class UnzipService extends IntentService {
}
}
- migrate(notificationBuilder, userDataDirectory);
unzip(notificationBuilder, zipFile, userDataDirectory);
} catch (IOException e) {
isSuccess = false;
@@ -200,44 +198,6 @@ public class UnzipService extends IntentService {
}
}
- /**
- * Migrates user data from deprecated external storage to app scoped storage
- */
- private void migrate(Notification.Builder notificationBuilder, File newLocation) throws IOException {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
- return;
- }
-
- File oldLocation = new File(Environment.getExternalStorageDirectory(), "Minetest");
- if (!oldLocation.isDirectory())
- return;
-
- publishProgress(notificationBuilder, R.string.migrating, 0);
- if (!newLocation.mkdir()) {
- Log.e("UnzipService", "New installation folder cannot be made");
- }
-
- String[] dirs = new String[] { "worlds", "games", "mods", "textures", "client" };
- for (int i = 0; i < dirs.length; i++) {
- publishProgress(notificationBuilder, R.string.migrating, 100 * i / dirs.length);
- File dir = new File(oldLocation, dirs[i]), dir2 = new File(newLocation, dirs[i]);
- if (dir.isDirectory() && !dir2.isDirectory()) {
- moveFileOrDir(dir, dir2);
- }
- }
-
- for (String filename : new String[] { "minetest.conf" }) {
- File file = new File(oldLocation, filename), file2 = new File(newLocation, filename);
- if (file.isFile() && !file2.isFile()) {
- moveFileOrDir(file, file2);
- }
- }
-
- if (!recursivelyDeleteDirectory(oldLocation)) {
- Log.w("UnzipService", "Old installation files cannot be deleted successfully");
- }
- }
-
private void publishProgress(@Nullable Notification.Builder notificationBuilder, @StringRes int message, int progress) {
Intent intentUpdate = new Intent(ACTION_UPDATE);
intentUpdate.putExtra(ACTION_PROGRESS, progress);
diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml
index 99f948c99..d8bb7ac68 100644
--- a/android/app/src/main/res/values/strings.xml
+++ b/android/app/src/main/res/values/strings.xml
@@ -1,13 +1,8 @@
-
Minetest
Loading…
- Migrating save data from old install… (this may take a while)
- Required permission wasn\'t granted, Minetest can\'t run without it
Loading Minetest
Less than 1 minute…
Done
- External storage isn\'t available. If you use an SDCard, please reinsert it. Otherwise, try restarting your phone or contacting the Minetest developers
-