Intereting Posts
Air родные расширения FDT Проблемы при настройке Frank для iOS Когда я отправляю изображение в Instagram из своего приложения, он напрямую открывается в раздел фильтрации Instagram, но я хочу, чтобы он открывал секцию обрезки Instagram? формат пакета неоднозначен (может быть, приложение или фреймворк), делая Архив Объективные аннотации C медленно появляются после нажатия Наиболее эффективный способ хранения данных, которые могут быть доступны и изменены всеми пользователями Каковы возможные сценарии, в которых AFHTTPRequestOperation не будет называть блоки успеха или отказа? Как сделать UITableView похожим на это? Лучшие способы хранения данных приложений iPad / iPhone IBOutletCollection не связан с UILabels в раскадровке Как открыть всплывающее окно, содержащее UIview или изображение Как заставить контроллер вида принять тот же размер, что и контейнерный вид своего далекого предка? Локальная декларация «просмотра скорости» скрывает переменную экземпляра Настроить Cipher Suites на OS X iOS Соединение Socket.io, когда приложение переходит на задний план

Обновление объектов анализа только в том случае, если они новее, чем определенная дата?

В настоящее время я перезагружаю каждый объект в своем приложении iOS, каждый запуск приложения и загрузку их в массив (около 1000 объектов почти).

Я действительно хочу быть намного более эффективным и понял, что в 99% случаев уже загруженные записи не будут меняться, поэтому я бы предпочел только загружать объекты с updatedAt датой даты, чем любые updatedAt даты, хранящиеся в моем локальном массиве (I кэширование).

Есть ли метод whereKey который я могу использовать для вызова объектов, новее, чем определенная дата, или способа проверки, когда произошел последний кеш? Во-вторых, есть ли способ, которым я могу заменить старые опции, если обновленная версия присутствует, поскольку я добавляю их в список?

при загрузке ресурса, который вам нужен, позаботьтесь о том, чтобы он Response header содержимое контента вашего ресурса. Если запрос успеха в Response header может содержать специальный ключ: Last-Modified .

Сохраните его для каждого успеха запроса. В следующий раз, когда запрос снова, вам не нужно загружать весь ресурс. Когда вы получите ответ, получите Last-Modified из заголовка ответа. Сравните со старыми данными Last-Modified , если это то же самое, что вы действительно перераспределяете ресурсы.

Поле createdAt существует для всех записей. Следите за тем, как вы делали запрос в последний раз.

 // first time, initialize it to find all rows self.lastQuery = [NSDate distantPast]; // get rows created after the last query [query whereKey:@"createdAt" greaterThan:self.lastQuery]; // once the query is done, remember the date, save it however you save stuff in your app self.lastQuery = [NSDate date];