Contentstack iOS Persistence 库
Contentstack 为您提供iOS Persistence 库,允许您的应用程序在设备本地存储数据。这有助于您构建可以在离线情况下也工作的应用程序。以下是以我们的 iOS Persistence 库入门的详细指南和有用的资源。
先决条件
- 最新版的 Xcode 和 Mac OS X
设置和初始化库
您可以使用 iOS Persistence 库与 CoreData 和 Realm 数据库。让我们了解如何为您的项目设置这些数据库。
对于 CoreData
要为 CoreData 设置此库,请按照以下步骤操作。
使用 CocoaPods 配置
- 在 Podfile 中添加以下行
pod 'ContentstackPersistenceCoreData'
- 运行 pod install,你应该现在有了库的最新版本。
导入头文件/模块
#import <ContentstackPersistenceCoreData/ContentstackPersistenceCoreData.h>;
也可以将其作为模块导入
- Objective-C
@import ContentstackPersistenceCoreData
- Swift
import ContentstackPersistenceCoreData
初始化库
要开始在您的应用程序中使用此库,您需要通过提供相关堆栈信息来初始化它
- Objective-C
Config *config = [[Config alloc] init]; config.host = @"customcontentstack.io"; Stack *stack = [Contentstack stackWithAPIKey:<APIKey> accessToken:<AccessToken> environmentName:<EnvironmentName> config:config]; CoreDataStore *coreDataStore = [[CoreDataStore alloc] initWithContenxt: <NSManageObjectContext>]; SyncManager *syncManager = [[SyncManager alloc] initWithStack:stack persistance:coreDataStore] [syncManager sync:{ (percentageComplete, isSyncCompleted, error) in }];
- Swift
let config = Config() config.host = @"customcontentstack.io"; let stack : Stack = Contentstack.stack(withAPIKey: <APIKey>, accessToken: <AccessToken>, environmentName: <EnvironmentName>, config:config) var coreDataStore = CoreDataStore(contenxt: <NSManageObjectContext>) var syncManager : SyncManager = SyncManager(stack: stack, persistance: coreDataStore) syncManager.sync({ (percentage, isSynccompleted, error) in })
对 Realm 的支持
要为 Realm 配置此库,请按照以下步骤进行。
使用 CocoaPods 配置
- 在 Podfile 中添加以下行
pod 'ContentstackPersistenceRealm'
- 运行 pod install,你应该现在有了库的最新版本。
导入头文件/模块
您可以将头文件作为以下方式导入 Objective-C 项目的
#import <ContentstackPersistenceRealm/ContentstackPersistenceRealm.h>;
也可以将其作为模块导入
- Objective-C
@import ContentstackPersistenceRealm
- Swift
import ContentstackPersistenceRealm
初始化库
要在您的应用程序中使用库,您需要通过提供堆栈详情来初始化它
- Objective-C
Config *config = [[Config alloc] init]; config.host = @"customcontentstack.io"; Stack *stack = [Contentstack stackWithAPIKey:<APIKey> accessToken:<AccessToken> environmentName:<EnvironmentName> config:config]; RealmStore *realmStore = [[RealmStore alloc] initWithRealm:[[RLMRealm alloc] init]]; SyncManager *syncManager = [[SyncManager alloc] initWithStack:stack persistance:realmStore] [syncManager sync:{ (percentageComplete, isSyncCompleted, error) in }];
- Swift
let config = Config() config.host = @"customcontentstack.io"; let stack : Stack = Contentstack.stack(withAPIKey: <APIKey>, accessToken: <AccessToken>, environmentName: <EnvironmentName>, config:config) var realmStore = RealmStore(realm: RLMRealm()) var syncManager : SyncManager = SyncManager(stack: stack, persistance: realmStore) syncManager.sync({ (percentage, isSynccompleted, error) in })
我们使用iOS持久化库创建了一个示例应用程序,该库在设备本地存储中存储数据。阅读教程以开始使用示例应用程序。