2015-05-02 3 views
1

Я смущен с эмуляторами Android. Любой эмулятор для Android KitKat или Lollipop не эмулирует правильную запись внешнего диска.Android Emulator не предотвращает запись внешнего диска?

Оба Android версии должны предотвратить приложения, чтобы сделать изменения на внешнем диске (запись или модифицирующим), даже если приложение определило

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

Я пытался в Android официального эмулятора, а также в Genymotion.

+0

Вы попробовали это в Genymotion? – Youngjae

ответ

1

Когда вы создаете новый AVD и настраиваете SD-карту, вы добавляете внешнему хранилищу внешнему хранилищу в эмулятор. Android от версии 4.4 предотвращает изменение вторичного внешнего хранения, как вы можете видеть here:

Разрешение WRITE_EXTERNAL_STORAGE должен предоставить доступ только к записи основное внешнее хранилище на устройстве. Приложениям не разрешается отправлять на внешние внешние устройства хранения, за исключением их каталогов, специфичных для пакета, которые разрешены с помощью синтезированных разрешений. Ограничение записи таким образом гарантирует, что система удалит файлы , когда приложения будут удалены.

По этой причине ваше приложение может писать на внешнее хранилище в эмуляторе.

К сожалению, эмулятор по умолчанию не может эмулировать вторичное внешнее хранилище.

+0

Итак, в конце концов, я должен проверить новые устройства вместо эмуляторов? – sancho21

+0

Спасибо. Недавно я обнаружил, что съемное хранилище, такое как SDCard, попадает под вторичное внешнее хранилище, как этот пост http://stackoverflow.com/questions/29924220/how-to-emulate-a-real-external-sd-update-removable-storage-card- в-андроида-эм. Я действительно ненавижу этот факт, что эмуляторы не подражают ему. – sancho21

Смежные вопросы