在哪里放置文件来存储共享偏好

时间:2015-12-26 03:06:03

标签: android

我想在我的应用程序中使用共享偏好,但是在互联网上的所有教程和文档中,我都找不到放置我想要使用的文件的位置。

我的意思是,当试图访问它时:

public static final String PREFS_NAME = "AOP_PREFS";
SharedPreferences  settings = getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);

我不知道在哪里放置文件AOP_PREFS.xml,以便我的类可以使用它。我错过了什么,我不是想创建一个文件吗?

2 个答案:

答案 0 :(得分:0)

我不太明白你在这里要做什么。如果您的代码位于活动类中,则只需拨打getSharedPreferences(int)而不是getSharedPreferences(String, int)。你得到这样的偏好:

SharedPreferences prefs = getSharedPreferences (Context.MODE_PRIVATE);

或者您也可以使用PreferenceManager课程来获取共享偏好设置:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);

其中thisContext个对象。

您可以使用密钥从首选项中检索字符串(在本例中为myString)。

prefs.getString ("myString", "");

如果您没有使用myString键保存字符串,则会返回第二个参数。

这是您可以将字符串保存到首选项中的方法:

prefs.edit().putString ("myString", "Some String value");

第一个参数是键,第二个参数是值。不言自明!

NOW REMEMBER!每次保存时,请致电apply()

prefs.edit().putString ("myString", "Some String value").apply();
                                                         *******

这就是你必须了解的共享偏好!

答案 1 :(得分:0)

使用SharedPreferences,文件会自动在应用内部存储空间的files文件夹中创建,因此您无需显式执行任何操作即可创建文件。

本案例中的文件为AOP_PREFS.xml

您也可以使用“默认”SharedPreferences,它将存储在包含您应用程序包名称的xml文件中。

写入默认SharedPreferences的示例:

    SharedPreferences sp =  PreferenceManager.getDefaultSharedPreferences(this);
    SharedPreferences.Editor editor = sp.edit();
    editor.putLong("some_value", someValue);
    editor.commit();

读:

    SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
    Long someVal = sp.getLong("some_value", 0);

请注意,除非您拥有root设备,否则您将无法在内部存储中查看文件。