Локальное хранилище данных StackMob

Недавно я решил перейти на StackMob (из Parse). Мне удалось настроить основные данные, и я могу читать и писать в хранилище данных StackMob.

Пока что StackMob предлагает пользователю список товаров. Если пользователь решит использовать элемент в моем приложении, я хочу, чтобы этот элемент был доступен в автономном режиме, чтобы он мог использовать его без подключения к стекамобу.

Я имею в виду создание локальных базовых данных и копирование элементов, выбранных пользователем. Моя первая проблема, если бы я мог использовать один и тот же объект для базовых данных (стека и локальный). И если это правильный подход, чтобы следовать.

1 ответ

Решение

Последний SDK включает в себя поддержку для кэширования основных данных. Подробности в этом блоге.

Система кеширования по умолчанию отключена. Чтобы включить его, просто установите флаг SM_CACHE_ENABLED на YES в файле делегата приложения, прежде чем инициализировать хранилище основных данных. Флаг объявлен в SMCoreDataStore.h.

Он также включает в себя этот пример кода для управления кешем...

SMClient *client = [[SMClient alloc] initWithAPIVersion:@"0" publicKey:@"XXXX"];
SMCoreDataStore *coreDataStore = [client coreDataStoreWithManagedObjectModel:myModel];
[client.session.networkMonitor setNetworkStatusChangeBlockWithCachePolicyReturn:^SMCachePolicy(SMNetworkStatus status) {
        if (status == Reachable) {
            return SMCachePolicyTryNetworkElseCache;
        } else {
            return SMCachePolicyTryCacheOnly;
        }
}];
Другие вопросы по тегам