simperium-ios
Simperium 是一种简单的方式,让开发者能够实时自动地移动数据。这是 iOS/OSX 库。您可以浏览文档或尝试教程。
您可以在这里注册 Simperium 的托管版本。还有支持其他语言的 Simperium 库。
将 Simperium 添加到您的项目中
添加 Simperium 的最简单方法是下载最新版本。将源代码解压缩到方便的位置。
然后,将 Simperium.xcodeproj 拖到应用程序的项目中,并在目标的构建阶段选项卡(在“链接二进制与库”下)添加 Simperium.framework。您仍然需要添加一些依赖。
OSX
在 OSX 上,一切基本上和之前一样。一些更改已在在线文档中注明。
发布
主分支始终包含最新的稳定版本,并已打好标签。Simperium 已被成千上万的人在不同应用程序和设备中使用,并被认为适合生产环境。
开发分支包含正在进行中的开发构建(不打算用于生产)。
文件夹结构
Simperium。所有内容都是通过一个 Simperium
实例访问。此类可以在同一个应用程序中安全地多次实例化(例如,用于单元测试)。
对象。Simperium 做了很多差异检查,以仅发送变化的数据。任何符合 SPDiffable
协议的对象类都受支持。《SPManagedObject》用于 Core Data,而《SPObject》用于存储原始 JSON(尚未支持)。《SPGhost》是对象对自己在服务器上状态的看法(这个名字来自Tribes 网络模型)。
差异检测。一个 SPDiffer
可以对任何 SPDiffable
对象进行差异检查。每个差异检测器都符合一个 SPSchema
。该模式存储特定类型对象的成员/属性列表(为《SPMember》类型)。每个《SPMember》的子类对应一个数据类型,并且知道如何进行差异检测。在未来,它们将用于自定义差异、冲突解决、验证等。
系统。《SPBucket》提供了访问特定类型对象的同步桶的访问权限。《SPBucket》有一个用于执行差异的《SPDiffer》,一个用于本地读写数据的《SPStorageProvider》,一个用于处理传入和传出变化的《SPChangeProcessor》,以及一个用于处理从服务器检索到的索引的《SPIndexProcessor》。这些处理器在自己的线程中运行。
存储。《SPStorageProvider》定义了一个用于本地读写对象的接口。特别是它定义了一个返回线程安全实例的 threadSafeStorage
方法。《SPCoreDataProvider》是目前唯一完全功能的存储提供者。
认证。《SPAuthenticator》处理 Simperium 的所有认证,可以根据需要自定义或覆盖。有适用于 iOS 和 OSX 的配套类,它们提供有代码驱动的登录和注册用户界面的功能(《SPAuthenticationViewController》和《SPAuthenticationWindowController》)。
网络。《SPNetworkProvider》定义了在《SPBucket》中远程读写对象的接口。网络提供者在后台发送本地数据并接收远程数据,并根据需要将其通过线程处理器传递。《尽管存在 HTTP 提供者,但 WebSockets 提供者旨在成为默认提供者(但仍在开发中)。
用户。提供对用户数据的初步访问。在未来,这将包含自定义属性和存在信息。
助手。导出器、密钥管理器等。
许可协议
Simperium iOS库可以在MIT许可下免费和商业使用。