【问题标题】:Is there timeout for storing variables in Android在Android中存储变量是否有超时
【发布时间】:2014-10-01 18:54:16
【问题描述】:

我将我的 android 应用程序的 UserID 变量保存在一个类中,以便可以从所有应用程序活动中访问它

问题是有时这个变量会在一段时间后被清空。

那么是否存在存储变量的会话超时?

    //This is how I set the variable
    ((PubVar) getApplication()).SetVariable("UserID", UserID);

    //This is how I get the variable
    pUserID = ((PubVar) getApplication()).GetVariable("UserID");

public class PubVar extends Application {
private String UserID;

public String GetVariable(String Var){

    Var = Var.trim().toUpperCase();
    if (Var.equals("USERID")) {return UserID;}

    return null;
}

public void SetVariable(String Var, String Value){
    Var = Var.trim().toUpperCase();
    if (Var.equals("USERID")) {UserID = Value;}
}

}

【问题讨论】:

    标签: android session variables android-activity global-variables


    【解决方案1】:

    一段时间后,Android 操作系统会杀死您的应用和所有变量以释放 RAM。如果你想正确保存这个变量,你应该把它保存在SharedPreferences

    【讨论】:

    • 无论应用程序运行多长时间,它都会存储变量吗?将在所有活动之间共享?
    • @asmgx 它实际上会永久保留在那里(直到你删除它们)。 Google 甚至可以备份您的设置。我不确定 SP 是否默认备份,但here's 一些关于手动备份的信息。
    猜你喜欢
    • 2012-04-04
    • 1970-01-01
    • 2016-09-28
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    相关资源
    最近更新 更多