編輯:關於Android編程
本文實例講述了Android開發之Sqliteopenhelper用法。分享給大家供大家參考。具體分析如下:
如果在安卓開發中,直接使用Activity中的openOrCreateDatabase(name, mode, factory)會有一系列跟隨的問題。比如說數據庫升級、更新等。
最好是使用其封裝版本:SQLiteOpenHelper
繼承和擴展SQLiteOpenHelper類主要做的工作就是重寫以下兩個 方法。
onCreate(SQLiteDatabase db) : 當數據庫被首次創建時執行該方法,一般將創建表等初始化操作在該方法中執行。
onUpgrade(SQLiteDatabse dv, int oldVersion,int new Version):當打開數據庫時傳入的版本號與當前的版本號不同時會調用該方法。
除了上述兩個必須要實現的方法外,還可以選擇性地實現onOpen 方法,該方法會在每次打開數據庫時被調用。
自己在業務中重寫這些函數,然後通過helper的getWritableDatabase和getReadableDatabase來得到想要操作的數據庫。再進行操作就可以了。
另外,判斷一個表在sqlite中是否存在,可以使用如下方法:
String sql = "SELECT count(*) FROM sqlite_master WHERE type='table' AND name='items'";
Cursor cur = db.rawQuery(sql, null);
int count = -1;
while (cur.moveToNext()) {
count = cur.getInt(0);
}
if (count <= 0) {
// 表不存在
} else {
}
希望本文所述對大家的Android程序設計有所幫助。
UI高級--觸摸與手勢
1.觸摸事件的處理方式 (1)事件類型 觸摸事件(觸摸手機屏幕) 運動事件(如微信的搖一搖) 遠程控制事件(如藍牙)(2)響應者類通過復寫以下方法
Android 中如何計算 App 的啟動時間?
之前有人在知乎提問:“怎麼計算apk的啟動時間?”: 利用Python或者直接用adb命令怎麼計算apk的啟動時間呢?就是計算從點擊圖標到apk完
Android自定義View之邊框文字、閃爍發光文字
對現有控件進行擴展1、繪制如下所示的兩層背景的TextView創建BorderTextView繼承TextView在構造函數中初始化一些基本數據 //外邊框 mPa
Android Studio多渠道批量打包及代碼混淆
一、批量打包1、集成了友盟統計,並在AndroidManifest.xml中添加了如下代碼<meta-dataandroid:name=UMENG_CHANNELa