Robię nową aplikację na Androida. Chcę utworzyć folder w folderze "Android", który jest dostępny w sdcard. Wcześniej chcę sprawdzić, czy folder ma uprawnienia do odczytu/zapisu. Jak mogę to zdobyć? Czy ktoś może mi w tym pomóc?Uprawnienie do odczytu/zapisu Androida z folderu
5
A
Odpowiedz
15
Robisz to w starej szkole w stylu java. Utwórz obiekt pliku i zadzwoń pod numer canWrite()
i canRead()
.
File f = new File("path/to/dir/or/file");
if(f.canWrite()) {
// hell yeah :)
}
6
Aby utworzyć folder w folderze Android najlepszym sposobem jest:
File path = getExternalFilesDir();
To będzie Twój własny katalog, więc jeśli masz pozwolenie na to, będzie można do odczytu/zapisu, jeśli pamięć zewnętrzna jest dostępna. Aby sprawdzić to użyć tego kodu:
boolean mExternalStorageAvailable = false;
boolean mExternalStorageWriteable = false;
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
// We can read and write the media
mExternalStorageAvailable = mExternalStorageWriteable = true;
} else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
// We can only read the media
mExternalStorageAvailable = true;
mExternalStorageWriteable = false;
} else {
// Something else is wrong. It may be one of many other states, but all we need
// to know is we can neither read nor write
mExternalStorageAvailable = mExternalStorageWriteable = false;
}
uprawnienia wymagane do pisania:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Folder nie może mieć uprawnienia do odczytu/zapisu. To jest folder. Użytkownicy to ci, którzy mają uprawnienia do odczytu/zapisu do folderów. Czy tego właśnie szukasz? –