gpt4 book ai didi

android - 应用程序在重启时总是忘记共享首选项

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:05:59 24 4
gpt4 key购买 nike

我不知道该怎么办了

似乎在 android 3.0 及更高版本上运行良好,但在 android 2.3.3 上,每次我启动应用程序时,它都会再次询问用户名/密码。

我正在使用共享首选项。

以下是我保存首选项的方式:

        SharedPreferences preferences = MyApplication.getAppContext().getSharedPreferences("athopbalance", MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("username", username).commit();
editor.putString("password", password).commit();

这是我阅读它们的方式:

    SharedPreferences preferences = MyApplication.getAppContext().getSharedPreferences("athopbalance", Context.MODE_PRIVATE);
String username = preferences.getString("username", "");
String password = preferences.getString("password", "");

我还尝试使用此代码保存首选项:

        SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(MyApplication.getAppContext());
SharedPreferences.Editor editor = preferences.edit();
editor.putString("username", username).commit();
editor.putString("password", password).commit();

然后用这段代码读取它们:

    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(MyApplication.getAppContext());
String username = preferences.getString("username", "");
String password = preferences.getString("password", "");

但它也不起作用。

问题是在我重新启动应用程序之前,我可以看到它们仍然存在。但是,一旦我重新启动 - 我最终得到用户名的“”(空字符串)和密码的“”。

任何想法将不胜感激

最佳答案

public class MyApplication extends Application {
private static MyApplication instance;

@Override
public void onCreate() {
super.onCreate();
Log.d(TAG, "onCreate() called");
}

public MyApplication() {
super();
Log.d(TAG, "Constructor called");
instance = this;
}


public static MyApplication getApplication() {
if (instance == null) {
instance = new MyApplication();
}
return instance;
}
}

和用法:

MyApplication.getApplication().getSharedPreferences(MY_PREFERENCES, Context.MODE_PRIVATE)

关于android - 应用程序在重启时总是忘记共享首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15183224/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com