[英]onCreateOptionsMenu(Menu menu) only gets called once during the lifecycle of an Activity
[英]how to avoid that a class gets unloaded during lifecycle
我想將一個類及其類變量用作全局變量的全局“緩存”。
我需要確保它永遠不會在應用程序生命周期中卸載並丟失其值。
如何確保該類永遠不會卸載?
這是聲明類的方式:
public class GlobalVars {
public static Integer gi1;
public static WebiDBAdapter gDBAdapter;
}
非常感謝!
如果要存儲可由ANY客戶端訪問的全局對象,則應考慮使用“應用程序狀態”。 例如,應用程序狀態通常用於實現全局計數器,該計數器跟蹤所有應用程序客戶端已執行一次操作的次數。
但是,如果您需要為每個客戶端存儲單獨的全局狀態,則會話狀態將是您的最佳選擇。
使用應用程序類
需要維護全局應用程序狀態的人員的基類。 您可以通過在AndroidManifest.xml的標簽中指定其名稱來提供自己的實現,這將在創建應用程序/包的過程時為您實例化該類。
public class ApplicationGlobalVars extends Application
{
public Integer gi1;
public WebiDBAdapter gDBAdapter;
// put some setter and getters here.
public Integer getGi1()
{ return gi1; }
}
要在您的活動中使用它:
ApplicationGlobalVars appState = ((ApplicationGlobalVars)this.getApplication());
appState.getGi1();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.