Считаем ли мы встроенную память телефона Android встроенной или внешней памятью?

Документация Android здесь говорит, что:

"Каждое Android-совместимое устройство поддерживает общее" внешнее хранилище ", которое можно использовать для сохранения файлов. Это может быть съемный носитель (например, SD-карта) или внутреннее (несъемное) хранилище. Файлы, сохраненные на внешнем носителе хранилище доступно для чтения всем пользователям и может быть изменено пользователем, когда они позволяют USB-накопителю передавать файлы на компьютер ".

Это означает, что встроенная память также считается внешней, но в той же документации также говорится:

"Для чтения или записи файлов на внешнее хранилище ваше приложение должно получить системные разрешения READ_EXTERNAL_STORAGE или WRITE_EXTERNAL_STORAGE"

Я могу читать содержимое внутреннего хранилища, не запрашивая никаких разрешений в моем файле manifest.xml. Я использую следующий код для этого:

File currentFolder =  new File("/");
File[] subFiles = currentFolder.listFiles();
scanner= new Scanner(subfiles[0]);
String line = scanner.nextLine();
Log.i("blah", line);

Разве эти два утверждения не противоречат друг другу? Встроенное хранилище внутреннее или внешнее?

1 ответ

Решение

Вы получаете доступ к внутренней памяти вашего устройства.

Если на вашем устройстве нет SD-карты, ваша внешняя память - это папка внутри внутренней памяти (я не совсем помню, но это что-то вроде emu).

Другие вопросы по тегам