#iphone #cordova #web-applications
#iPhone #кордова #веб-приложения
Вопрос:
мой вопрос довольно прост: когда я сохраняю файлы с помощью phonegap API, эти файлы сохраняются в базе данных HTML 5 storage DB (завернутой в Phonegap) или в памяти iPhone?
Если вы поняли, я предпочитаю второй вариант, потому что там нет ограничения в 5 МБ….
Ответ №1:
Я думаю, вы говорите о локальном хранилище, у которого есть ограничение в 5 МБ. Но имейте в виду, что локальное хранилище больше предназначено для пар ключ / значение. Хотя 5 МБ — это немного, скажем, для мультимедийных файлов, это достаточный объем только для данных.
Если вам нужно сохранить файлы на устройстве, ознакомьтесь с документацией PhoneGap по File API. Это позволяет сохранять файлы в соответствующих каталогах каждого устройства.
Я не уверен насчет ограничений на объем памяти, но они будут диктоваться самими устройствами (а не PhoneGap).
Комментарии:
1. Итак, например, возможно ли создать html-страницу, единственной задачей которой является загрузка всего, что я должен использовать (обновления, фотографии и так далее …)?
2. Это возможно, но не рекомендуется. Если это основные файлы, которые являются частью вашего приложения, лучше поместить их в папку www и включить их в ваше приложение. Если вы используете загруженные файлы для изменения внешнего вида или поведения вашего приложения, Apple может счесть, что вы обходите их процесс проверки обновлений… и, возможно, отказать вам в одобрении. Если вы создаете программу для чтения RSS, то обязательно загружайте ресурсы и контент. Но если ваша цель — самостоятельно размещать файлы вашего приложения, позволяя вам изменять их по своему усмотрению, это может быть немного более проблематичным.
3. Однако моя проблема заключается не в обновлении всего приложения (графика остается прежней), а только данных, которые я использую. Например, я должен создать приложение, которое показывает несколько поездок по городу, и я хочу их обновить. Итак, могу ли я создать папку с именем «data», в которой я храню все медиафайлы (за пределами папки «www»)?
4. Если это дополнительные данные для вашего приложения … тогда да, я думаю, File API — это то, что вам нужно. Я сам им не пользовался, но рекомендовал бы ознакомиться с документацией, чтобы увидеть, как каждое устройство обрабатывает хранение / извлечение файлов… поскольку местоположения немного отличаются, в зависимости от устройства.
Ответ №2:
Если Phonegap не сохраняет файлы на сервер (что кажется странным), он, очевидно, должен сохранять их в памяти iPhone, независимо от того, используется база данных или нет.
О каком ограничении в 5 МБ вы говорите?
Комментарии:
1. iOS имеет ограничение в 5 МБ для баз данных HTML5.
Ответ №3:
PhoneGap предоставляет ряд объектов, которые предоставляют вам доступ к файловой системе, будь то на iOS, Android или Blackberry. Проверьте docs for File для получения дополнительной информации и примеров.