1.比如我現在在用net.sqlcipher.database 這個加密庫(網上能搜得到的,用於資料庫加密)。 那麼我現在就在項目用載入這個jar包(在你的項目單擊右鍵-》屬性-》Java Build Path-》Libraries-》Add Jars,選擇提供給你的jar包,我這里是 sqlcipher.jar,然後在Order and Export勾選你剛剛載入的 jar包。)
2.打開你的workspace目錄,在你的項目目錄下創建一個文件夾libs(如果文件夾不存在的話),然後將提供給你的so庫放入該目錄,基本架構就算是搭建好了。
3.進行開發,這里你需要問一下提供給你jar包的廠家,基本的用法,否則的話是無法進行開發的,因為你都不知道怎麼去用。 sqlcipher的基本用法是:
SQLiteDatabase.loadLibs(this); //載入 so庫文件,你的廠家的方法應該也是類似。
File databaseFile = getDatabasePath(SQLite_toll.DATABASE_NAME);
databaseFile.mkdirs();
databaseFile.delete();
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(databaseFile, helper_SharedPreferences.get_str_sp("database_cipher",this), null);
SQLite_toll initToll = new SQLite_toll(this, avaSys);
initToll.onCreate(database);
database.close();
//因為我sqlcipher是用於資料庫加密的,所以你所看到的都是資料庫的一些方法,你廠家提供給你的jar包的用法,你是要去問他們的,或者他們的是否有開源代碼,又或者是網上也有很多人使用,那麼能搜到相關資料。
根據你補充的提問,那麼就是System.loadLibrary(this); ,就可以調用了
⑵ 如何解決androidsQLiteDatabase中的表不存在
資料庫存放在 /data/data/PACKAGE_NAME/databases 目錄下 你當然可以指定資料庫名字,可以將db文件打包在工程里。 private SQLiteDatabase openDatabase() { try { // 獲得dictionary.db文件的絕對路徑 String databaseFilename = DATABASE_PATH + "/" + DATABASE_FILENAME; File dir = new File(DATABASE_PATH); // 如果/sdcard/dictionary目錄中存在,創建這個目錄 if (!dir.exists()) dir.mkdir(); // 如果在/sdcard/dictionary目錄中不存在 // dictionary.db文件,則從res\raw目錄中復制這個文件到 // SD卡的目錄(/sdcard/dictionary) if (!(new File(databaseFilename)).exists()) { // 獲得封裝dictionary.db文件的InputStream對象 InputStream is = getResources().openRawResource( R.raw.dictionary); FileOutputStream fos = new FileOutputStream(databaseFilename); byte[] buffer = new byte[8192]; int count = 0; // 開始復制dictionary.db文件 while ((count = is.read(buffer)) > 0) { fos.write(buffer, 0, count); } fos.close(); is.close(); } // 打開/sdcard/dictionary目錄中的dictionary.db文件 SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase( databaseFilename, null); return database; } catch (Exception e) { } return null; }
⑶ 關於androidsqlite的date類型排序問題是怎樣做的
日期類型排序,字元串類排序都是要注意的,如果是在做的過程中出現沒有按照日期類型排序,而是字元串類型排序的。現在有兩種解決方法要不入庫規范點兒2012-3-4入庫為2012-03-04,要不就修改數據類型。