swift - 新的 FMDB 不使用 SqlCipher 加密?
问题描述
我迅速将FMDB和 FMDB/SQLCipher 添加到我的可可应用程序中。我发现一些链接告诉如何将现有的未加密 sqlite3 数据库导出到加密数据库。但我想创建新的加密数据库。所以我按照下面的代码,但数据库没有加密,仍然可以通过 sql lite 浏览器等第三方工具打开。请帮我。
private let key = "password"
let databaseFileName = "sample.db"
var pathToDatabase: String!
var database: FMDatabase!
let documentsDirectory = (NSSearchPathForDirectoriesInDomains(.applicationSupportDirectory, .userDomainMask, true)[0] as NSString) as String
pathToDatabase = documentsDirectory.appending("/\(databaseFileName)")
if !FileManager.default.fileExists(atPath: pathToDatabase) {
database = FMDatabase(path: pathToDatabase!)
if database != nil {
// Open the database.
if database.open() {
database.setKey(key)
}
else {
print("Could not open the database.")
}
}
}
我检查了database.setKey(key)
返回false,可能是什么问题?
解决方案
推荐阅读
- reactjs - React/TypeScript:通过 HOC 使用上下文
- github - 更改默认打开文件 github pages
- apache-drill - apache钻java.lang.NullPointerException
- java - 如何使用轮廓检测八角形
- postgresql - Postgresql:给定另一个表的ID数组,更新一个表中的多行
- pyasn1 - 在 pyasn1 中处理嵌套的 DER,打包到八位字节字符串中
- adsense - google adsense 有后台可点击广告吗?
- java - 如何创建arrayList的arrayList(?)?
- android - ContraintLayout:可选顶视图
- ruby - ruby、gem、rbenv 命令未找到