Android --- SharedPreferences

SharedPreferences 对应sp文件的接口

使用 SharedPreferences API可以保存的相对较小键值对集合。SharedPreferences 对象指向包含键值对的文件,并提供读写这些键值对的简单方法。每个 SharedPreferences 文件均由框架进行管理,可以是私有文件,也可以是共享文件。

activity.getSharedPreferences(String name,int mode) 可以得到一个sp对象

  • name:文件名,不带xml
  • mode:生成的模式,是否私有

需要多个由名称(使用第一个参数指定)标识的共享偏好设置文件,则使用此方法
activity.getPreferences(int mode) 可以得到一个sp对象

只需使用一个共享偏好设置文件,请从 Activity 中使用此方法

  • SharedPreferences不能真正的保存,此时需要Editor更新sp文件的接口

  • sp. edit()可以创建一个 Editor对象。

  • Editor.put(name,value):保存键值对,但没有真正保存到文件中

  • Editor.remove(name):移除key=name的值

  • commit() :提交保存修改

    public class spActivity extends AppCompatActivity {
    private SharedPreferences sp;

    复制代码
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_sp);
          sp = this.getPreferences(Context.MODE_PRIVATE);
          SharedPreferences.Editor editor = sp.edit();
          editor.putString("data","这是第一个数据");
          editor.commit();
      }

读取数据

调用 getInt()getString() 等方法,为您想要的值提供键;如果键不存在,则可以选择返回默认值。例如:

复制代码
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.integer.saved_high_score_default_key);
int highScore = sharedPref.getInt(getString(R.string.saved_high_score_key), defaultValue);

最后保存的地方

右下角找到虚拟机文件

Data ->Data ->你的包名 -> shared_prefs ->文件名

相关推荐
Digitally5 小时前
如何用5种实用方法将电脑上的音乐传输到安卓手机
android·智能手机·电脑
HahaGiver6666 小时前
Unity与Android原生交互开发入门篇 - 打开Unity游戏的设置
android·unity·交互
2501_915909067 小时前
WebView 调试工具全解析,解决“看不见的移动端问题”
android·ios·小程序·https·uni-app·iphone·webview
IT乐手8 小时前
android 下载管理工具类
android
2501_915106329 小时前
App 怎么上架 iOS?从准备资料到开心上架(Appuploader)免 Mac 上传的完整实战流程指南
android·macos·ios·小程序·uni-app·iphone·webview
科技峰行者10 小时前
安卓16提前发布能否改写移动生态格局
android
蒲公英少年带我飞10 小时前
Android NDK 编译 protobuf
android
沐怡旸10 小时前
【底层机制】ART虚拟机深度解析:Android运行时的架构革命
android·面试
小禾青青11 小时前
uniapp安卓打包遇到报错:Uncaught SyntaxError: Invalid regular expression: /[\p{L}\p{N}]/
android·uni-app
studyForMokey11 小时前
【Kotlin内联函数】
android·开发语言·kotlin