Не удается записать на SD-карту в Android-эмуляторе

Я добавил эту строку в AndroidManifest.xml:

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

Однако, когда я запускаю код для записи на SD-карту, я получаю эту ошибку:

02-19 13:24:46.760: E/CameraTest(598): /mnt/sdcard/image.jpg: open failed: EACCES (Permission denied)

Как решить эту проблему?

EDIT: Я использую Android-эмулятор с SDCard.

EDIT-2: Я знаю, в чем проблема: я вызвал функцию Environment.getExternalStorageState(), и я получил "удален". Кто-нибудь знает, как исправить это и сделать состояние MEDIA_MOUNTED

Спасибо!

Ответ 1

Итак, я решил это. Это была проблема, с которой я столкнулся при установке SD-карты, и что андроид не допускает пробелов на пути!

Ниже приведена хорошая процедура (если используется eclipse): http://www.brighthub.com/mobile/google-android/articles/33240.aspx

ПРИМЕЧАНИЕ: в случае, если в пути есть пробел, переместите файл образа SDK в другое место, а затем запустите команду эмулятора с SD-картой, и все должно работать нормально!

Ответ 2

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

С уважением, Jonas

Ответ 3

Я замечаю, что эта проблема может возникнуть, если вы используете эмулятор Android 6.0, Android добавила новую модель разрешения для (Marshmallow).

Trick. Если вы настроите таргетинг на версию 22 или ниже, ваше приложение будет запрашивать все разрешения во время установки так же, как и на любом устройстве под управлением ОС под Marshmallow

Ответ 4

Я очистил кеш для того, какое приложение я использовал, чтобы попытаться разобрать картинку (Pixlr), и все было в порядке.