Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android studio下使用SqlCipher

android studio下使用SqlCipher

編輯:關於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權限直接查看明文數據庫。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved