2017-02-16 9 views
-2

Я пишу приложение, в котором размещено более 1000 небольших изображений в папке www/images в моем приложении cordova (я использую Intel XDK для сборки). Приложение должно проверять наличие обновлений и загружать изображения, которые у пользователя отсутствуют, вместе с другим контентом. Я хочу, чтобы новые изображения сохранялись в той же папке, что и существующие изображения (www/images), и не могли найти, как это сделать. Все, что я нахожу, это статьи о сохранении изображений камеры Кордовы в галерее/ролике камеры и т. Д.Кордова сохраняет загрузку изображений в папку www

Содержимое будет транслироваться и «впрыснут», который сохранит его в локальном хранилище. Я просто борюсь с изображениями.

ответ

0

Насколько я знаю, вы не можете этого сделать. Папка www является частью пакета приложений и изолирована, чтобы защитить ее, а также писать. Это тот же ответ, который получил кто-то еще: Cordova Write To WWW Directory (iOS).

Вы должны использовать File API для записи в одну из доступных для записи областей файлов. Вы можете найти несколько примеров того, как это сделать здесь: https://github.com/johnwargo/apache-cordova-api-cookbook-code/tree/master/chapter10-file.

Некоторые подробности из книги:

Кордова File API обеспечивает приложение с методами, необходимыми взаимодействовать с локальной структуры каталогов устройства. API предоставляет методы, которые приложение может использовать для просмотра файловой системы, чтение, запись, копирование, перемещение и удаление файлов. Приложение не может получить доступ к только в любой части файловой системы, только временное и постоянное место хранения файлов (описано ниже) на мобильном устройстве.

реализации Кордовы АФИ Файл основан частично на W3C File API: Каталоги и спецификации системы (www.w3.org/TR/file-system-api). Не все возможности спецификации W3C были реализованы, но API предоставляет основные возможности, необходимые большинству разработчиков мобильных устройств: .

Приложение будет использовать этот API для чтения и записи файлов в файловой системе устройства . Приложение может использовать одну из многих доступных опций хранения для веб-приложения для хранения данных приложения, но разработчики могут также использовать файловую систему для сохранения настроек приложения или данных приложения с использованием файловой системы, написание текстовых файлов (в формате XML или JSON, например) при необходимости при запуске приложения . Кроме того, помните, что API-интерфейсы Camera (Chapter 3) и Capture (Глава 4) записывают свои файлы в файловую систему, приложения используют File API для управления этими файлами по мере необходимости.

Большинство смартфонов предоставляют приложения с двумя различными типами файлов место для хранения. Для хранения временных файлов устройство предоставляет временное хранилище . Для содержимого и данных, которые являются неотъемлемой частью работы приложения и должны оставаться доступными после закрытия и перезапуска приложения , приложение должно использовать постоянное хранилище .

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

Стойкое хранение, с другой стороны, более стабильно; устройство OS защищает его во время перезагрузки и при закрытии приложения. Постоянное хранилище приложения будет опустошено ОС только тогда, когда приложение будет удалено с устройства.

В примере приложения пользовательский интерфейс приложения предоставляет кнопки, которые используются для взаимодействия с различными типами файловых систем, как показано на рисунке . Рисунок 10.1. Как видно из рисунка, я использовал jQuery Mobile для пользовательского интерфейса приложения, чтобы упростить код и позволить jQuery Мобильное соглашение с списками файлов рендеринга, переходя между страницами и и так далее.