Android studio SQLCipher加密SQLite数据库的几个坑

前言:Android 自带的SQLite数据库可以用于数据存储,但是,大家都知道其数据是存储于手机的data/data/包名/之下,如果手机获得root权限,那么数据自然也就暴露无疑,因此对SQLite数据库进行加密是很有必要的。SQLCipher是基于SQLite进行扩展的开源数据库,采用OpenSSL加密库提供的算法,非常适合于移动开发。

一、Android studio中使用SQLCipher的几个坑(注意点)
1、SQLCipher for android 3.1.0下载网盘链接,提取码:f7kk
2、解压下载压缩包,结构如下:

3、将assets文件夹和libs文件夹 (此步骤必不可少!!!) 拷贝到你的工程模块目录下,并且右键sqlcipher.jar文件,将其添加到库中。最终工程目录如下:

4、将assets文件夹拷贝到Android工程的main目录下;同时在main目录下新建jniLibs文件夹 (坑1,一定要建该文件夹,否则会报错:java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader…couldn’t find "libstlport_shared.so),将解压的libs文件夹下文件全部拷贝到jniLibs文件夹下,最终Android工程的main目录结构图如下

5、此时如果直接运用SQLCipher (坑2,会报如下错误java.lang.UnsatisfiedLinkError: dlopen failed: library “libutils.so” not found),解决方法是将工程Module中的目标sdk版本改为22(23以下均可),如下

6、至此便可顺利的使用SQLCipher了!!!具体的使用方法会在下一篇文章中详细讲解

更多相关文章

  1. [置顶] android怎样调用@hide和internal API
  2. Android(安卓)manifest中关于 sharedUserId 数据权限
  3. 开机时候系统总是提醒Android系统更新
  4. 将android某些类进行打包和混淆
  5. Android(安卓)Studio安装过程及常见问题
  6. Android之xUtils-3.0数据库框架详解
  7. 如何启动Android虚拟机中的命令行窗口(adb)?
  8. 将apk装入system/app
  9. Android用SQLite存储数据详解

随机推荐

  1. 使用ddmlib实现android 性能监控
  2. android binder c++层 - 回调客户端服务
  3. Android中自定义Checkbox
  4. Android Developers:日历提供者
  5. Android下载网络图片到本地
  6. android如何改变默认横竖屏方向
  7. Android判断当前系统语言
  8. android SDK 更新出现错误的解决办法
  9. WebView 简单使用一
  10. layout_weight 权重