2013-05-06 75 views
0

我的應用程序有一個主要活動,它啓動兩個不同的活動。一個是主要遊戲,另一個是排行榜。我建立了一個SQLite數據庫。實現排行榜數據庫 - Android

我需要能夠通過主遊戲活動視圖向數據庫添加分數,然後讀取排行榜活動視圖中的數據。如果我在主活動類中創建數據庫,則無法從其他活動訪問數據庫。有沒有解決的辦法?

回答

0

我通常做的就是創建一個擴展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

+0

完美的作品。天才。謝謝 :) – Waddas 2013-05-06 16:47:16