2014-10-05 87 views
0

我有一個LibGDX項目,裏面有4個項目:libGDX,Proyecto-android,Proyecto-core和Proyecto-desktop。我的問題是我想用SQLite來創建一個數據庫,但是我的核心項目(Proyecto-core)中擁有所有的類,因此我無法擴展SQLiteOpenHelper。 Proyecto-android中唯一的類是AndroidLauncher.java:核心項目中的SQLite - LibGDx

package ort.nico.Proyecto.android; 

import android.os.Bundle; 

import com.badlogic.gdx.backends.android.AndroidApplication; 
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration; 
import ort.nico.Proyecto.Proyecto; 

public class AndroidLauncher extends AndroidApplication { 
@Override 
protected void onCreate (Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    AndroidApplicationConfiguration config = new AndroidApplicationConfiguration(); 
    initialize(new Proyecto(), config); 
} 
} 

回答

1

您必須將代碼與特定於平臺的代碼進行接口。

1)在你的核心項目,以創建像initdb的方法的接口(),getMyObject(),storeMyObject(myObject的)......認爲你需要與你的數據庫交互的所有方法。

2)在你的核心項目中調用你需要與數據庫交互的方法。首先將您的新界面作爲參數添加到您的遊戲構造函數中。在你的情況:新Proyecto(myInterfaceImplementation)

3)對於你的每個項目,實現這個新的接口。這就是你會在android系統在你的Android實現initdb的()

更多信息在libGDX維基使用SQLiteOpenHelper,INITING的DB:https://github.com/libgdx/libgdx/wiki/Interfacing-with-platform-specific-code

+0

謝謝你的解決方案,但我改變存儲信息的方式我需要。我沒有使用SQLite,而是將所有信息保存在一個.txt文件中,並使用java Scanner類讀取它 – Nicocoen97 2014-10-09 16:45:45