专栏名称: Cocoa开发者社区
CocoaChina苹果开发中文社区官方微信,提供教程资源、app推广营销、招聘、外包及培训信息、各类沙龙交流活动以及更多开发者服务。
目录
相关文章推荐
51好读  ›  专栏  ›  Cocoa开发者社区

腾讯开源微信数据库框架WCDB

Cocoa开发者社区  · 公众号  · ios  · 2017-06-11 11:56

正文

WCDB


WCDB是一个高效、完整、易用的移动数据库框架,基于SQLCipher,支持iOS, macOS和Android。


WCDB for iOS/macOS


基本功能


  • WINQ(WCDB语言集成查询): 通过WINQ,开发者无须为了拼接SQL的字符串而写一大坨胶水代码。

  • ORM(Object Relational Mapping): WCDB支持灵活、易用的ORM。开发者可以很便捷地定义表、索引、约束,并进行增删改查操作。

  • 多线程高并发: WCDB支持多线程读与读、读与写并发执行,写与写串行执行。

  • 加密:WCDB提供基于SQLCipher的数据库加密。

  • 损坏修复: WCDB内建了Repair Kit用于修复损坏的数据库。

  • 反注入: WCDB内建了对SQL注入的保护。

  • ...


入门


基本要求


  • WCDB支持iOS 8、macOS 10.10以上。

  • WCDB需使用Xcode 8.0以上版本进行编译。

  • 需使用Objective-C++。


安装


  • 通过Carthage安装:

  1. 先安装 Carthage

  2. 在Cartfile中添加 github "Tencent/WCDB" ,并执行 carthage update

  3. Carthage/Build/ 目录下iOS或Mac的 WCDB.framework 添加到你的项目工程配置的"Build Phases"->"Linked Binary and Libraries"中。

  4. 点击你的项目工程配置的"Build Phases"中的"+"选项,在弹出菜单中选择"New Run Script Phase"。在创建的脚本中添加 carthage copy-frameworks ,并在"Input Files"中添加对应平台的路径 $(SRCROOT)/Carthage/Build/iOS/WCDB.framework $(SRCROOT)/Carthage/Build/Mac/WCDB.framework


  • 通过源码安装 :

    • 通过git clone时,需指定recursive参数: git clone https://github.com/Tencent/wcdb.git --recursive

    • 若clone时未指定recursive参数,则可以通过 git submodule update --init --recursive 拉取submodule。

  1. 获取源码

  2. 将`WCDB.xcodeproj添加到你的工程中.

  3. 在你的项目工程配置的"Build Phases"->"Target Dependencies"和"Build Phases"->"Linked Binary and Libraries"中添加 WCDB.framework

  4. 在你的项目工程配置的"General"->"Enbedded Binaries"中添加 WCDB.framework

在你的代码文件头引入头文件 #import ,就可以开始使用WCDB了。

注:


  • 由于WCDB是Objective-C++库,因此,对于引入WCDB的代码文件,需要修改其文件名后缀.m为.mm

  • 关于Cocoapods - WCDB依赖于SQLCipher,而且是逐文件链入,而不是整一个大的sqlite.c。这在调试上会更方便,但对应的cocoapods配置就会更复杂。我们会在最近完成cocoapods的接入。


使用教程


使用教程请参考 这里


相关文档



WCDB for Android


基本功能


  • 基于 SQLCipher 的数据库加密

  • 使用连接池实现并发读写

  • 内建 Repair Kit 可用于修复损坏数据库

  • 针对占用空间大小优化的数据库备份/恢复功能

  • 日志输出重定向以及性能跟踪接口

  • 内建用于全文搜索的 mmicu FTS3/4 分词器







请到「今天看啥」查看全文