Поиск пути к SD-карте в Android-приложении

Я разрабатываю Android-приложение в браузере, используя Cordova (AKA Phonegap), работающее на самом устройстве. У меня нет проблем с чтением / записью файлов на SD-карту в моем эмуляторе, но мне кажется, что я не могу положиться на то, что он монтируется в / sdcard в реальном мире, тем более что друг указал, что некоторые устройства могут на самом деле есть больше чем один.

Поискавшись, я вижу множество ответов о том, как найти путь к SD-карте при разработке приложения на Java, но нет упоминания о том, как сделать то же самое в моем Javascript. Интересно, сможет ли кто-нибудь указать мне правильное направление, пожалуйста?

2 ответа

Вот почему вы используете:

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);

Объект файловой системы, который вы получаете в обратном вызове onSuccess, будет иметь корневое свойство, которое представляет собой DirectoryEntry, которое в большинстве случаев указывает на каталог /sdcard в Android. Этот метод вызывает код Java для определения правильного внешнего каталога хранения, и он должен быть для вас согласованным.

Если вы пытаетесь сохранить фотографии с помощью PhoneGap, вы должны использовать свойство:

destinationType : Camera.DestinationType.FILE_URI, saveToPhotoAlbum: true


Изображения, сохраненные по этому пути: / mnt / sdcard / DCIM / camera

Полный код выглядит так:

    navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50, 
    destinationType: destinationType.FILE_URI,
    sourceType: source });
Другие вопросы по тегам