Страница 1 из 1

SdCard в Эклипсе

Добавлено: 23 фев 2015, 10:44
AlexeyFedor
Вроде как понятно, что данные лучше хранить на Sdcard, а в приложении использовать их по мере необходимости. На простом примере сохраняем картинки на карту, в активити смотрим картинку.
Для того чтобы использовать SdCard в эмуляторе, карту надо создать. Лучше создавать карты в отдельной дирректории.
Создаем новую папку.У меня например так.
Далее нужно создать саму SdCard, для этого служит утилита mksdcard. Которая находится в место_установки:\adt-bundle-windows-x86-20130219\sdk\tools У меня так D:\android\adt-bundle-windows-x86-20130219\sdk\tools
Её необходимо запустить из командной строки с такими параметрами D:\android\adt-bundle-windows-x86-20130219\sdk\tools\mksdcard.exe -l mySdCard 1024M D:\android\SdCard\mySdCardFile.img
Здесь mySdCard метка тома. 1024M размер. D:\android\SdCard\ путь по которому создается SdCard для этого создавали новую папку на диске. mySdCardFile.img имя SdCard.
Для того чтобы на SdCard закачать данные необходима программа которая умеет читать образы диска. Я использовал такую winimage.exe, скачать можно в сети. Там все просто, перетаскиваете файлы и папки которые вам необходимы на вашу SdCard. Я перенес папочку с картинками для тренировки.
Далее нужно настроить ваше виртуальное устройство. Запускаем эклипс, переходим в android Virtual Device Manager . Редактируем SdCard выбранного устройства. После этого перегружаем.
Теперь у нас есть SdCard на которой хранятся картинки. Такой момент, содержимое SdCard через File Explorer (который в эклипсе) не видно.
Новый проект простейший код. На лайоут переносим ImageView.
в активити пишем такой код

Код: Выделить всё

ImageView image=(ImageView) findViewById(R.id.image);
		image.setImageURI(Uri.parse("file://mnt/sdcard/DictonaryPictures/ring.jpeg"));
file://mnt/sdcard/DictonaryPictures/ring.jpeg эта строчка путь к картинке которая лежит на карте.
Надо еще в манифесте прописывать Permission <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> но почему то сработало и так.