[android] sharedPreference入门

/********************2016年5月6日 更新**************************************/

知乎:Android 如何实现判断用户首次使用,比如首次使用时展示软件使用教程?

 

面条:

你需要的是SharedPreferences。

SharedPreferences可以在本地存储一些简单的数据。

 

首次进入的时候判断在本地存储的一个boolean值或者int值,例如叫做isFirstOpen。

/**************************************************************************/

 

为了保存带有特殊字符的数据到文件中,谷歌提供的SharedPreference(共享参数)。

通过Context对象的getSharedPreference(name,mode)方法得到SharedPreference对象,name参数是文件名称,mode参数是上一节的那些模式。

调用sp对象的edit()方法,得到Editor编辑器对象

调用Editor对象的putString(key,value)方法放入数据,很像Map集合

调用Editor对象的commit()方法提交一下,很像数据库的事务操作,保证数据同时提交成功

 

自动创建文件/data/data/包名/shared_prefs/文件名.xml

读取sp很简单,同样的获取SP对象,调用SP对象的getString(key,defaultValue),应用程序的配置信息都可以利用这个来保存。不同类型的值保存时,节点就是自身的类型。特殊字符会进行转义。

 

拷贝项目,修改完包名后一定要重新导一下R文件,上诉方法不会抛异常,函数定义成void无返回类型。

java代码:

 

复制代码
    /**
     * 保存用户名和方法的业务方法
     * @param context 上下文
     * @param username 用户名
     * @param password 方法
     * @return
     */
    public static void saveUserInfo(Context context,String username,String password){
        
        SharedPreferences sp=context.getSharedPreferences("config", Context.MODE_PRIVATE);
        Editor ed=sp.edit();
        ed.putString("username", username);
        ed.putString("password", password);
        ed.commit();
    }
复制代码

 

        //读取
        SharedPreferences sp=getSharedPreferences("config", Context.MODE_PRIVATE);
        et_username.setText(sp.getString("username",""));
        et_password.setText(sp.getString("password",""));

 

posted @   唯一客服系统开发笔记  阅读(327)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示
1
chat with us