简介:主要用于保存一些用户偏好参数,eg:是否自动登陆,是否记住账号密码等等;
(类似windows上的ini文件,J2SE中的properties属性文件与xml文件)
注:SharedPreferences也是使用xml文件, 然后类似于Map集合,使用键-值的形式来存储数据;
使用流程
注:data/data/<包名>可以看到在shared_prefs目录下生成的xml文件;
Editor的commit与apply区别
1.apply没有返回值而commit返回boolean表明修改是否提交成功;
2.apply是将修改数据原子提交到内存, 而后异步真正提交到硬件磁盘, 而commit是同步的提交到硬件磁盘,
因此,在多个并发的提交commit的时候,他们会等待正在处理的commit保存到磁盘后在操作,从而降低了效率
而apply只是原子的提交到内容,后面有调用apply的函数的将会直接覆盖前面的内存数据,这样从一定程度上提高了很多效率;
3.apply方法不会提示任何失败的提示;
场景:由于在一个进程中,sharedPreference是单实例,一般不会出现并发冲突,
如果对提交的结果不关心的话,建议使用apply,当然需要确保提交成功且有后续操作的话,还是需要用commit的;
读取其他应用的SharedPreferences
MD5加密
1.Message Digest Algorithm MD5(消息摘要算法第五版)为计算机安全领域广泛 使用的一种散列函数,用以提供消息的完整性保护;
2.一种加密算法,可以将一个字符串,或者文件,压缩包,执行MD5加密后, 就可以生产一个固定长度为128bit的串,这个串基本唯一;
3.一个十六进制 需要用4个bit来表示,那么对应的MD5的字符串长度就为:128 / 4 = 32位了;
(16位的md5只是将32位MD5码去掉了前八位以及后八位)