0
我的應用程序有一個主要活動,它啓動兩個不同的活動。一個是主要遊戲,另一個是排行榜。我建立了一個SQLite數據庫。實現排行榜數據庫 - Android
我需要能夠通過主遊戲活動視圖向數據庫添加分數,然後讀取排行榜活動視圖中的數據。如果我在主活動類中創建數據庫,則無法從其他活動訪問數據庫。有沒有解決的辦法?
我的應用程序有一個主要活動,它啓動兩個不同的活動。一個是主要遊戲,另一個是排行榜。我建立了一個SQLite數據庫。實現排行榜數據庫 - Android
我需要能夠通過主遊戲活動視圖向數據庫添加分數,然後讀取排行榜活動視圖中的數據。如果我在主活動類中創建數據庫,則無法從其他活動訪問數據庫。有沒有解決的辦法?
我通常做的就是創建一個擴展SQLiteOpenHelper並處理所有數據庫交互的單例類。
private static String DB_NAME = DATABASE_NAME;
private SQLiteDatabase myDataBase;
private final Context myContext;
private static DataBaseHelper databaseHelperInstance;
private DataBaseHelper(Context context) {
super(context, DB_NAME, null, 1);
this.myContext = context;
}
public static synchronized DataBaseHelper getInstance(Context c) {
if (databaseHelperInstance == null) {
synchronized (DataBaseHelper.class) {
databaseHelperInstance = new DataBaseHelper(c);
}
}
return databaseHelperInstance;
}
然後在你需要它呼喚它:
DataBaseHelper.getInstance(this.getApplicationContext());
這個博客可能會有所幫助:http://www.androiddesignpatterns.com/2012/05/correctly-managing-your-sqlite-database.html
完美的作品。天才。謝謝 :) – Waddas 2013-05-06 16:47:16