配置开发库FMDB支持加密、***.xcconfig的用法以及提供一个免费的数据库管理app
来源:互联网 发布:三维图软件 编辑:程序博客网 时间:2024/06/06 18:22
FMDB默认是不支持加密的,而且行业里也有提供加密的sqlite开发库,但大多数是需要收费的,并且支持加密的数据库管理应用也是收费。今天在这里我给大家集成一个免费的加密库,还支持跟FMDB对接的:SQLCipher,同时提供一个自己研发一个简单支持加密的数据库管理应用(mac版本)源码下载:
https://github.com/wuyoujian0313/SQLiteManager
要集成FMDB支持加密,就需要把SQLCipler集成进来,一般有两种方式(我个人采用第二种)
第一种,采用pod方式来集成:
platform :ios, '6.0'
target "FMDB-encrypt"do
pod 'FMDB'
pod 'FMDB/SQLCipher'
end
对于这种方式,大家可以百度一下;
第二种,采用源码的方式集成:
1、我们需要创建一个.xcconfig文件,里面输入:
SQLCIPHER_OTHER_CFLAGS = $(inherited) -DSQLITE_HAS_CODEC -DSQLITE_TEMP_STORE=2 -DSQLITE_THREADSAFE -DSQLCIPHER_CRYPTO_CC
OTHER_CFLAGS = $(inherited) ${SQLCIPHER_OTHER_CFLAGS}
上面的意思就是在工程的Build Settings里增一个配置同时修改一个配置;要试他生效就需要把这个xcconfig文件导入到工程里,然后在工程的project配置里的:如图配置:只有导入工程里的xcconfig文件这里才能够看到到。编译一下工程,你可以去target的Building Settings里找到刚刚配置的那两项;这两项本质上就是给工程增加一个编译宏,因为SQLCipher的sqlite3.h和sqlite3.m以及FMDB里需要通过这些宏打开支持加密;
这里讲到了xcconfig文件,我们可以用于其他的一些配置,这些配置怎么找到,可以用文本的方式打开工程文件:xcodeproj里的配置文件,可以找到对应的Building Settings里的配置宏。
最后把SQLCipher的sqlite3.h和sqlite3.m导入到工程里,后面的使用,可以参考下面代码:
BOOL bSuc = [selfopenDB:dbFile];
if (!bSuc) {
returnnil;
}
if(key !=nil && [keylength] >0){
[_dbsetKey:key];
}
[_dbsetShouldCacheStatements:YES];
FMResultSet *rs = [_dbexecuteQuery:sql];
- 配置开发库FMDB支持加密、***.xcconfig的用法以及提供一个免费的数据库管理app
- Xcconfig文件的用法
- xcconfig配置的关系
- 数据库 - fmdb 以及精简的 YTKKeyValueStore
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- [APP资讯] 开发一个App要多少钱?有免费开发App的网站吗?
- 提供一个免费的directui界面库(已开源)
- 一个提供免费体验sharepoint的网站
- 提供一个不错的免费日历控件
- 一个提供jsp免费空间的网站
- 提供一个免费的CSDN下载账号
- 如何使用SQLCipher给FMDB的数据库加密?
- FMDB的用法讲解
- Linux下如何搭建stm32开发环境
- 如何修改文件的权限
- 10+ 最佳的 Node.js 教程和实例
- 构建高性能ASP.NET站点之一 剖析页面的处理过程(前端)
- 用eclipse 将ZXing库 打包成jar包方法:
- 配置开发库FMDB支持加密、***.xcconfig的用法以及提供一个免费的数据库管理app
- android:theme和app:popupTheme的作用,以及在android 3.0以下不起作用问题的解决
- maven打war包
- `DevOps`相关知识搜集
- ubuntu14.04 安装数据库
- Live555学习笔记(四)—— RTP数据流向分析
- PPT幻灯片放映方式的典型问题及扩展研究
- Java(九) 泛型必备知识
- 二叉树 操作