diff --git a/res/values/strings.xml b/res/values/strings.xml index c90e11221..67e6da8fa 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -144,4 +144,5 @@ Can not access desired directory, using default. To fix this reselect the desired directory in app settings. Fulltext Search Allow app to search the text within articles. Caution this can slow search down considerably. + Due to a bug in android 6.0 we require you to reboot your device to continue without granting us the storage permission. We are sorry for any inconvenience this may cause. diff --git a/src/org/kiwix/kiwixmobile/KiwixMobileActivity.java b/src/org/kiwix/kiwixmobile/KiwixMobileActivity.java index 468c25989..2967ea7fb 100644 --- a/src/org/kiwix/kiwixmobile/KiwixMobileActivity.java +++ b/src/org/kiwix/kiwixmobile/KiwixMobileActivity.java @@ -935,9 +935,7 @@ public class KiwixMobileActivity extends AppCompatActivity { } public boolean openZimFile(File file, boolean clearHistory) { - if (ContextCompat.checkSelfPermission(this, - Manifest.permission.READ_EXTERNAL_STORAGE) - == PackageManager.PERMISSION_GRANTED || Build.VERSION.SDK_INT < 19 || (Constants.IS_CUSTOM_APP && Build.VERSION.SDK_INT != 23)) { + if (file.canRead() || Build.VERSION.SDK_INT < 19 || (Constants.IS_CUSTOM_APP && Build.VERSION.SDK_INT != 23)) { if (file.exists()) { if (ZimContentProvider.setZimFile(file.getAbsolutePath()) != null) { @@ -1003,6 +1001,10 @@ public class KiwixMobileActivity extends AppCompatActivity { newZimFile.setData(Uri.fromFile(mFile)); startActivity(newZimFile); } else { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setMessage(getResources().getString(R.string.reboot_message)); + AlertDialog dialog = builder.create(); + dialog.show(); finish(); } return;