]> gitweb.fperrin.net Git - Dictionary.git/blobdiff - src/com/hughes/android/dictionary/DictionaryApplication.java
More thorough writability check.
[Dictionary.git] / src / com / hughes / android / dictionary / DictionaryApplication.java
index f36f43b8b21f56a7ae2a93f1990268bf525267e2..d63553825430153b01bec1c25e6a34e13cf2d486 100644 (file)
@@ -20,6 +20,7 @@ import android.content.Intent;
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
 import android.net.Uri;
+import android.os.Build;
 import android.os.Environment;
 import android.preference.PreferenceManager;
 import android.support.v4.view.MenuItemCompat;
@@ -32,6 +33,7 @@ import android.view.View;
 import android.widget.Button;
 import android.widget.ImageButton;
 import android.widget.ImageView.ScaleType;
+import android.widget.Toast;
 
 import com.hughes.android.dictionary.DictionaryInfo.IndexInfo;
 import com.hughes.android.dictionary.engine.Dictionary;
@@ -382,7 +384,7 @@ public class DictionaryApplication extends Application {
             public boolean onMenuItemClick(final MenuItem menuItem) {
                 final Intent intent = new Intent(Intent.ACTION_VIEW);
                 intent.setData(Uri
-                        .parse("http://code.google.com/p/quickdic-dictionary/issues/entry"));
+                        .parse("http://github.com/rdoeffinger/Dictionary/issues"));
                 context.startActivity(intent);
                 return false;
             }
@@ -400,9 +402,23 @@ public class DictionaryApplication extends Application {
         }
         dictDir = new File(dir);
         dictDir.mkdirs();
+        if (!dictDir.isDirectory() && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
+             getApplicationContext().getExternalFilesDirs(null);
+        }
         return dictDir;
     }
 
+    static public boolean checkFileCreate(File dir) {
+        boolean res = false;
+        File testfile = new File(dir, "quickdic_writetest");
+        try {
+            testfile.delete();
+            res = testfile.createNewFile() & testfile.delete();
+        } catch (Exception e) {
+        }
+        return res;
+    }
+
     public File getWordListFile() {
         final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
         String file = prefs.getString(getString(R.string.wordListFileKey), "");
@@ -605,7 +621,7 @@ public class DictionaryApplication extends Application {
                                 file.getName(), dictionaryInfo);
                     }
                 } else {
-                    Log.w(LOG, "dictDir is not a diretory: " + getDictDir().getPath());
+                    Log.w(LOG, "dictDir is not a directory: " + getDictDir().getPath());
                 }
                 if (!toAddSorted.isEmpty()) {
                     Collections.sort(toAddSorted, uncompressedFilenameComparator);