【问题标题】:How does SharedPreferences differ from a static global variable of one class?SharedPreferences 与一个类的静态全局变量有何不同?
【发布时间】:2012-09-27 15:15:31
【问题描述】:

我对@9​​87654321@ 的以下内容进行了解释,并对他们的能力有所怀疑。这是我发现的:

AndroidSharedPreferences 用于一个全球化的 变量,以便在整个应用程序中我们可以使用SharedPreferences 存储和检索数据,而不是在一个类中定义静态变量 并让该类用于检索整个应用程序中的变量。

谁能解释这是否正确。如果有我遗漏的主要差异,请告诉我。谢谢。

【问题讨论】:

  • 您的报价似乎不是报价。
  • 你从哪里得到这句话:“在android中,共享首选项用于变量的全球化..”

标签: android sharedpreferences


【解决方案1】:

当保存 sharedpreferences 时,android 系统只是在你的应用目录中创建一个新的 xml 文件来保存这些值。因此,如果您的应用程序被杀死,这些变量将被保存。并且变量总是可以从任何活动中读取,因为它们存储在一个文件中。

当存储共享首选项时,您使用一个键(最终的静态字符串)稍后访问它们,也许这个键就是他们在谈论静态时的意思

小例子:

静态:

public static final String PREFS_NAME = "settings"
public static final String SILENT_MODE = "silentMode";

在您应用的任何活动中:

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean(SILENT_MODE, false);

编辑自:http://developer.android.com/guide/topics/data/data-storage.html#pref

【讨论】:

    【解决方案2】:

    您使用 SharedPreferences 来保存和检索任何原始数据。与静态变量方法不同,即使您的应用程序被终止,这些数据也会在用户会话中持续存在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多