]> gitweb.fperrin.net Git - Dictionary.git/commitdiff
Small improvements when SDcard is missing.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 14 Mar 2016 20:33:28 +0000 (21:33 +0100)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 14 Mar 2016 20:33:28 +0000 (21:33 +0100)
Unfortunately, downloads are impossible if there
is no "external" directory.

src/com/hughes/android/dictionary/DictionaryApplication.java
src/com/hughes/android/dictionary/DictionaryManagerActivity.java
src/com/hughes/android/dictionary/PreferenceActivity.java

index 99e3088c0c18acdcdfe88bb299adf9584df6d0f5..50acb43c0a745e6ba111ed7f9dd5fb82c3f6c988 100644 (file)
@@ -423,6 +423,9 @@ public class DictionaryApplication extends Application {
                 return efd.getAbsolutePath();
             }
         }
+        if (!dictDir.isDirectory() && !dictDir.mkdirs()) {
+            return getApplicationContext().getFilesDir().getAbsolutePath();
+        }
         return dir;
     }
 
index 28a363521d7a155287bc225e6349acb084182941..e0b2574539b47a83eb69a30c497dfe960d8b131f 100644 (file)
@@ -666,7 +666,7 @@ public class DictionaryManagerActivity extends ActionBarActivity {
 
         try {
             request.setDestinationInExternalFilesDir(getApplicationContext(), null, destFile);
-        } catch (IllegalStateException e) {
+        } catch (Exception e) {
             request.setDestinationUri(Uri.fromFile(new File(Environment
                     .getExternalStorageDirectory(), destFile)));
         }
index 4481f46a737db3a568132bb828be286ed7e9591b..bcca16a6ceabc8d83a6892b25098dfce07a51948 100644 (file)
@@ -115,6 +115,9 @@ public class PreferenceActivity extends android.preference.PreferenceActivity
                         dirs += "\n" + externalFilesDir;
                 }
             }
+            File fd = getApplicationContext().getFilesDir();
+            if (fd.canWrite())
+                dirs += "\n" + fd.getAbsolutePath();
             new AlertDialog.Builder(this).setTitle(getString(R.string.error))
                 .setMessage(getString(R.string.chosenNotWritable) + dirs)
                     .setNeutralButton("Close", null).show();