diff --git a/AndorsTrail/AndroidManifest.xml b/AndorsTrail/AndroidManifest.xml
index 50e2e56b0..f9b64b2b5 100644
--- a/AndorsTrail/AndroidManifest.xml
+++ b/AndorsTrail/AndroidManifest.xml
@@ -20,10 +20,10 @@
android:anyDensity="true"
/>
-
-
+
+
+
+
= Build.VERSION_CODES.M) {
+ if (getApplicationContext().checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
+ this.requestPermissions(new String[] {Manifest.permission.READ_EXTERNAL_STORAGE}, READ_EXTERNAL_STORAGE_REQUEST);
+ }
+ if (getApplicationContext().checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
+ this.requestPermissions(new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, WRITE_EXTERNAL_STORAGE_REQUEST);
+ }
+ }
+ }
+
+ @Override
+ public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
+ if (grantResults.length > 0 && grantResults[0] != PackageManager.PERMISSION_GRANTED) {
+ Toast.makeText(this, R.string.storage_permissions_mandatory, Toast.LENGTH_LONG).show();
+ ((AndorsTrailApplication)getApplication()).discardWorld();
+ finish();
+ }
+ }
+
private void addSavegameSlotButtons(ViewGroup parent, LayoutParams params, List usedSavegameSlots) {
for (int slot : usedSavegameSlots) {
final FileHeader header = Savegames.quickload(this, slot);