android - 如何在android中使用getSharedPreferences

标签 android android-preferences sharedpreferences

我有一个应用程序,我必须在其中实现“登录” Activity 。我有这些组件:

  1. EditText 用户名
  2. EditText 密码
  3. 按钮登录
  4. 按钮取消

我希望我的应用程序在用户登录后记住用户的登录详细信息,直到用户按下“注销”按钮。我没有在我的 xml 中使用首选项。

如何让 getSharedPreferences(String name, int mode) 在我的应用程序中工作?

最佳答案

首先使用获取 SharedPreferences 的实例

SharedPreferences userDetails = context.getSharedPreferences("userdetails", MODE_PRIVATE);

现在保存 SharedPreferences 中的值

Editor edit = userDetails.edit();
edit.putString("username", username.getText().toString().trim());
edit.putString("password", password.getText().toString().trim());
edit.apply();

以上行将用户名和密码写入偏好

现在要从首选项中检索保存的值,您可以按照以下代码行进行操作

String userName = userDetails.getString("username", "");
String password = userDetails.getString("password", "");

(注意:不建议在应用程序中保存密码。您应该在保存之前加密密码或跳过保存密码)

关于android - 如何在android中使用getSharedPreferences,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5950043/

相关文章:

java - Android PreferenceList,选择后的子列表

android-layout - addView方法动态添加View时onDraw调用两次

android - 找出位图的分配位置?

android - 自定义 View 构造函数中的重写样式

java - 如何在 SharedPreferences 中保存 JSON 数组?

java - 如何在共享首选项中保存 ListView 状态

java - ClassCastException java.lang.Integer 在获取共享首选项值时无法转换为 java.lang.Long

android - Android 主屏幕旋转时不会调用 Widget onUpdate()

Android:如何在单元测试期间重置/清除应用程序首选项?

java - 获取 listPreference 选定的项目。安卓