2013-03-26 1 views
0

У меня есть приложение в магазине, который имеет кучу UITableViews, каждый из них имеет кучу элементов, которые при выборе, загрузите UIWebView, который загружает локальный файл HTML . Причина, по которой я это делаю, заключается в том, что он позволяет просматривать, когда нет доступа в Интернет, однако это утомительно для обновления.беспроводного обновления в Objective-C

Как я могу хранить как локальные файлы, так и хранить веб-файлы, так что, если я обновляю один в сети, он позволит пользователю узнать, что есть «обновление», и он может загружать и перезаписывать старый файл с помощью новый. Это возможно? Подобно тому, как я сделал бы себя бэкэндом для редактирования своего HTML и подключился к приложению, поэтому всякий раз, когда я нажимал кнопку «Сохранить», приложение должно было знать, что попросит пользователя обновить файлы, поэтому мне не нужно отправлять в яблоко для таких небольшие обновления.

Но мне все же необходимо разрешить автономный просмотр, если у них не было доступа в Интернет.

Какие технологии или методы я должен исследовать для достижения этой цели?

Благодаря

ответ

1

, что вы ищете это понятие html5 называется application cache .. это непосредственно касается вашей проблемы. С кешем приложения вы можете кэшировать статический контент на стороне клиента, который они могут просматривать, даже если они находятся в автономном режиме, но они могут обновлять его при изменении содержимого на сервере. Если вы look around, вы увидите, как люди используют это для iPhone.

обновление: Какой путь я бы идти о перезаписи файлов на телефон из них на сервере?

вы в основном обновляете кеш, чтобы сделать это. от docs:

Кэш приложение автоматически обновляет только, если файл манифеста изменения. Он не обновляется автоматически, если ресурсы, перечисленные в файле манифеста , изменяются. Файл манифеста считается неизменным, если он является байтом для байта одинаковым; поэтому изменение даты изменения файла манифеста также не вызывает обновления. Если это не , достаточное для вашего приложения, вы можете обновить кэш приложения явно с помощью JavaScript.

Я рекомендую вам прочитать некоторые сведения о локальном хранилище html5, чтобы получить представление о локальном кэше и файлах манифеста и т. Д., А затем просто следуйте инструкциям на документах Apple. Это не так сложно.

+0

Каким образом я могу переписывать файлы на телефоне с одного на сервере? – Anthony

+0

@ Энтони ответил обновлено – abbood

+0

Спасибо, что пожелаю. – Anthony

0

Вы можете кэшировать содержимое, как указано в abbood, но это не позволит вам предоставлять исходный автономный контент.

Другим подходом было бы использовать NSURLProtocol, что позволит вам выполнить запрос. Например, если у вас есть запрос на «http://google.com», вы сможете либо изменить URL-адрес, либо загрузить собственный контент (скажем, из локального каталога).

Смежные вопросы