4
ORMLite幫助我有一個@Singleton
類在那裏我已經注入的OrmLiteSqliteOpenHelper
一個實例。我真的需要撥打OpenHelperManager.releaseHelper()
嗎?如果我這樣做,在哪裏以及應該怎麼做,因爲該類不擴展任何Android基類,我可以到達onDestroy
?公佈對@Singleton
ORMLite幫助我有一個@Singleton
類在那裏我已經注入的OrmLiteSqliteOpenHelper
一個實例。我真的需要撥打OpenHelperManager.releaseHelper()
嗎?如果我這樣做,在哪裏以及應該怎麼做,因爲該類不擴展任何Android基類,我可以到達onDestroy
?公佈對@Singleton
有一個ORMLite例如Android項目這表明這家名爲HelloAndroidNoBase。我會檢查出來。
從主Activity
相關的代碼段包含下面。您需要在您的每個Activity
或使用該數據庫的其他類中都有這樣的代碼。
如果你的班級沒有onDestroy()
方法,那麼你需要添加一個,並從其他有onDestroy()
的班級中調用它。主Activity
是一個很好的地方。因此,當應用程序關閉時,MainActivity.onDestroy()
將調用yourClass.onDestroy()
。
public class HelloNoBase extends Activity {
private DatabaseHelper databaseHelper = null;
@Override
protected void onDestroy() {
super.onDestroy();
if (databaseHelper != null) {
OpenHelperManager.releaseHelper();
databaseHelper = null;
}
}
private DatabaseHelper getHelper() {
if (databaseHelper == null) {
databaseHelper = OpenHelperManager.getHelper(this,
DatabaseHelper.class);
}
return databaseHelper;
}
}