码迷,mamicode.com
首页 > 移动开发 > 详细

android studio下使用SqlCipher

时间:2015-08-27 18:42:34      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:android   数据库   加密   

android studio和eclipse 稍微有点不同。
Android studio 版本1.3
SqlCipher 版本3.3.1
1.将sqlcipher.jar复制到工程文件夹libs中;
2.在工程main下,新建两个文件夹jniLibs和assets,将amreabi文件夹整个复制到jniLibs中,将icudt46l.zip复制到assets中;
结构图如下:
技术分享
3.加载该类

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ButterKnife.bind(this);
        SQLiteDatabase.loadLibs(this);  //在使用该类之前加载,而且只加载一次
    }

注意导入的包为:import net.sqlcipher.database.SQLiteDatabase;

4.创建数据库的时候注意的细节
此方法无法打开数据库

      database = SQLiteDatabase.openOrCreateDatabase("data", "123456", null);
        if (database != null) {
            database.execSQL("CREATE TABLE IF NOT EXISTS person_student(name VARCHAR(20) NOT NULL , age INT(3))");
        }

这种才可以

    File file = context.getDatabasePath("data");
        file.mkdirs();
        database = SQLiteDatabase.openOrCreateDatabase(file, "123456", null); //
        if (database != null) {
            database.execSQL("CREATE TABLE IF NOT EXISTS person_student(name VARCHAR(20) NOT NULL , age INT(3))");
        }

比较两种方法,多了一步手动创建文件夹。

使用方法基本相同,它的加密解密都在内部完成,和我们写程序基本没关系,主要作用是防止别人通过root权限直接查看明文数据库。

版权声明:本文为博主原创文章,未经博主允许不得转载。

android studio下使用SqlCipher

标签:android   数据库   加密   

原文地址:http://blog.csdn.net/wuqiong657/article/details/48031155

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!