Я делаю новое приложение для Android. Я хочу создать папку в папке «Android», которая доступна в sdcard. До этого я хочу проверить, имеет ли папка права на чтение/запись. Как я могу это получить? может ли кто-нибудь помочь мне сделать это.Разрешение на чтение и запись Android из папки
5
A
ответ
15
Вы делаете это в стиле старой школы. Создайте файл-объект и вызовите canWrite()
и canRead()
.
File f = new File("path/to/dir/or/file");
if(f.canWrite()) {
// hell yeah :)
}
6
Чтобы создать папку в Android папку лучший способ:
File path = getExternalFilesDir();
Это будет ваш собственный каталог, так что если у вас есть разрешение на это, вы будете иметь возможность читать/писать, если доступно внешнее хранилище. Чтобы проверить это, используйте этот код:
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;
}
Права доступа, необходимые для записи:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Папка не может иметь права на чтение/запись. Его папка. Пользователи имеют права на чтение и запись в папки. Это то, что вы ищете? –