Android数据库--Sqlcipher的使用(一)
1、下載官方支持包:https://s3.amazonaws.com/sqlcipher/3.2.0/sqlcipher-for-android-community-v3.2.0.zip
? ? ?Github地址:https://github.com/sqlcipher/android-database-sqlcipher
2、本博客使用Android Studio開發(fā),Eclipse怎樣使用Sqlcipher大家可以到網(wǎng)上搜索。
3、需要導(dǎo)入以下包及文件。如何導(dǎo)入Jar包可以參考我的博客http://www.cnblogs.com/begin1949/p/4966542.html。
4、我們重寫一下SqliteOpenHelper類。這里注意一下引用的類來自于net.sqlcipher.database而不是谷歌官方的sqlite包。
import android.content.Context;import net.sqlcipher.database.SQLiteDatabase; import net.sqlcipher.database.SQLiteOpenHelper;public class MyDatabaseHelper extends SQLiteOpenHelper {public static final String CREATE_TABLE = "create table Book(name text,pages integer)";public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactoryfactory, int version) {super(context, name, factory, version);}@Overridepublic void onCreate(SQLiteDatabase sqLiteDatabase) {sqLiteDatabase.execSQL(CREATE_TABLE);}@Overridepublic void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {} }5、接下來即可使用了。
import android.content.ContentValues; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.View; import android.widget.Button; import android.widget.TextView;import com.sqlcipher.R;import net.sqlcipher.Cursor; import net.sqlcipher.database.SQLiteDatabase;public class Use1Activity extends FragmentActivity implements View.OnClickListener {private SQLiteDatabase db;private MyDatabaseHelper dbHelper;private Button mBtnAdd;private Button mBtnQuery;private TextView mTvShow;private String result;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_use1);initView();}private void initView() {SQLiteDatabase.loadLibs(this);dbHelper = new MyDatabaseHelper(this, "demo.db", null, 1);db = dbHelper.getWritableDatabase("secret_key");mBtnAdd = (Button) findViewById(R.id.add_data);mBtnQuery = (Button) findViewById(R.id.query_data);mTvShow = (TextView) findViewById(R.id.tv_show);mBtnAdd.setOnClickListener(this);mBtnQuery.setOnClickListener(this);}@Overridepublic void onClick(View v) {if (v == mBtnAdd) {ContentValues values = new ContentValues();values.put("name", "密碼");values.put("pages", 566);db.insert("Book", null, values);} else if (v == mBtnQuery) {Cursor cursor = db.query("Book", null, null, null, null, null, null);if (cursor != null) {while (cursor.moveToNext()) {String name = cursor.getString(cursor.getColumnIndex("name"));int pages = cursor.getInt(cursor.getColumnIndex("pages"));result += "book?name?is?" + name + "\n";result += "book?pages?is?" + pages + "\n";}}cursor.close();mTvShow.setText(result);result = "";}} }6、參考博文:https://discuss.zetetic.net/t/android-studio-integration/65
? ? ? ? ? ? ? ? ? ?http://blog.csdn.net/sziicool/article/details/18728153
轉(zhuǎn)載于:https://www.cnblogs.com/begin1949/p/4985883.html
總結(jié)
以上是生活随笔為你收集整理的Android数据库--Sqlcipher的使用(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何获取不同网站的favicon默认图标
- 下一篇: 【转】伪类选择器