android中SharedPreferences 读取不到数据的问题

 

在两个不同的 Activity中,A中SharedPreferences保存了数据,在A中可以读取到,但是在 B中却读取不到了,一直是空值,好是不爽,由于是按照书本上的例子写的, 怎么也找不到原因,后来才发现在保存的时候需要起个名字,然后才能在另一个 Activity中才能读取到。

书本上的例子是这样子的。

SharedPreferences.Editor ed= getPreferences(MODE_PRIVATE).edit();

然后通过下面的代码来读取到的

 SharedPreferences sp=getPreferences(MODE_PRIVATE);
 u=sp.getString("user","t");

在同一个Activity中读取没有问题,但是在另一个Activity中读取时,就读取不到值了。

 

后来发现在保存时需要给它起个名字,然后在读取时通过名字就能读取到了。

 SharedPreferences sp=getSharedPreferences("pppoe",MODE_PRIVATE);

读取的时候

SharedPreferences sp=getSharedPreferences("pppoe",MODE_PRIVATE);
uid= sp.getString("user","1235");

这样就没有任何问题了,看来写书的作者也是不太用心。

转载于:https://www.cnblogs.com/wjbych/p/7211047.html

android存储SharedPreferences后无法获取数据 个人在应用android SharePreferences时由于用法错误导致的无法获取到存储数据问题。在此记录,以作提醒 阅读详情

相关推荐

android——SharedPreferences数据读取和存储用法

!最后放上一个大概的Android学习方向及思路(详细的内容太多了~),提供给大家:对于程序员来说,要学习的知识内容、技术有太多太多,这里就先放上一部分,其他的内容有机会在后面的文章向大家呈现出来,不过我自己所有的学习资料都整理成了一个文档,一直在不断学习,希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!Android架构师之路很漫长,一起共勉吧!

2401_84010224的博客 1166

sharedPreferences不同activity之间的数据共享

SharedPreferences是要依靠context的。在activity中使用,或者传入context上下文对象。// 第一步,获取SharedPreferences的编辑者 SharedPreferences sharedPreferences=getSharedPreferences("ceshi",

beijinghsj的博客 3917

AndroidSharedpreferences牵涉到跨进程时不能实时读取问题

在做课程表应用时,由于要设置课前提醒的时间,我通过Sharedpreferences进行保存,访问模式设为了MODE_PRIVATE,结果在启动的BroadcastReceiver中无法实时读取,每次当数据Activity中改变时,在BroadcastReceiver中读取的都是上一次的值,而对应的XML文件中的数据已经改变了,并且只有手动清除应用程序的缓存后,才可以读取到修改后的值。弄了半天才

兰亭风雨的专栏 1万+

android 本地存储变量,Android 存储SharedPreferences出现无法获取数据

前言:Android开发时,我本地缓存了用户资料信息于SharedPreferences中,但出现了有时取出数据为空的情况。一、SharePreferences.Editor未用临时变量存储注释掉的那段代码便是我以前的错误写法,易导致切换界面后出现再获取到的数据为空的情况,用上述代码才正确二、SharedPreferences使用三、SharedPreferences的四种操作模式Context....

weixin_33922644的博客 856

Android开发 SharedPreferences读取不到最新数据..

最近公司的APP要实现进入APP的时候用户手动选择地区,然后在登录,这个时候其实是选择的对应的服务器地址,然而在实现过程中,我发现SharedPreferences在主页始终读取不到最新的服务器地址,比如说我刚开始进入的研发服务器,后面切换为测试服务器,然后里面的数据还是读取的 研发服务器的,后来打印发现主页服务器地址始终不是读取的当前最新地址,最后看了下,APP的两个service并没有运行在同一

Good luck 4820

Android学习:SharedPreferences存储数据读取数据

一、将数据存储到SharedPreferences中 1.SharedPreferences以键值对的形式来存储数据。 2.Android中主要提供3种方法用于得到SharedPreferences对象 Context类中的getSharedPreferences(String name, int mode)方法,第一个参数:指定SharedPreferences文件的名称(若指定的文件不存...

shexianyu的博客 1万+

Android开发实战——SharedPreferences数据读取详解

本章深入讲解了SharedPreferences数据读取的基本方法、复杂数据的解析方式以及性能优化策略。通过掌握这些内容,开发者可以更加高效、安全地使用SharedPreferences进行本地数据读取操作。下一章将聚焦SharedPreferences数据写入机制,包括Editor的使用、提交方式的对比以及写入过程中的事务控制与异常处理,帮助开发者构建完整的数据持久化能力体系。

weixin_32311823的博客 518

【安卓】SharedPreferences存储

SharedPreferences使用键值对的方式来存储数据的。也就是说,当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可以通过这个键把相应的值取出来。而且SharedPreferences还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么读取出来的数据也是整型的;如果存储的数据是一个字符串,那么读取出来的数据仍然是字符串。

君子慎独,不欺暗室。卑以自牧,含章可贞。 1151

安卓学习专栏——从SharedPreferences读取数据SharedPreferences的get方法(图文+代码)

SharedPreferences读取数据SharedPreferences的get方法(图文+代码)。建议先看前面的文章——[安卓学习专栏——SharedPreferences文件存储(图文+代码)

MZH 3475

Android-SharedPreferences存储数据读取

前几天参考了某位大神的代码

葫芦、 6840

SharedPreferences存储/读取数据

SharedPreferences是通过键值对的方式来存储数据的。要想使用SharedPreferences来存储或者读取数据,首先要获得SharedPreferences对象。Android主要提供了3种方法用于得到SharedPreferences对象: 1.Context类中的getSharedPreferences()方法 此方法接受两个参数,第一个是指定Sha...

qq_38367681的博客 3636

Android使用SharedPreferences存储数据

Android官方api:SharedPreferences类提供了一个通用框架,以便您能够保存和检索原始数据类型的永久性键值对。您可以使用SharedPreferences来保存任何原始数据:布尔值,浮点值,整型值,长整型和字符串。此数据将跨多个用户会话永久保留(即使您的应用已终止亦如此)。 详解:SharedPreferences使用xml格式为Android应用提供一种永久数据存贮方式,并且...

计蒙不吃鱼的博客 8011

Android SharedPreferences保存成功但是无法获取数据问题

本人Java码农,在自己摸索开发Android遇到了一个问题使用SharedPreferences保存登录token之类的参数的时候,发现保存成功,commit()也返回了true,可是获取不了。下面是代码:SharedPreferences sp = getSharedPreferences("loginToken", MODE_PRIVATE); SharedPreferences.Edito...

wendiepei的博客 5777

Android 存储SharedPreferences后无法获取数据

前言:Android开发时,我本地缓存了用户资料信息于SharedPreferences中,但出现了有时取出数据为空的情况。 一、SharePreferences.Editor未用临时变量存储 注释掉的那段代码便是我以前的错误写法,易导致切换界面后出现再获取到的数据为空的情况,用上述代码才正确 二、SharedPreferences使用

何哥的博客 7151

[Android]SharedPreference存储成功,读取不到

问题描述: commit()或者apply()之后保存成功,并且打开对应的xml文件查看储存成功,但是onCreat时get不到xml文件中储存的值。 解决办法: 建议一个Activity抽取一个全局变量 SharedPreferences mSharedPreferences,就能维持一致性。 ...

鲲之大,一锅炖不下 1258

AndroidSharedPreferences中取出的值为空的原因

AndroidSharedPreferences中取出的值为空的原因

HardProgrammer的博客 1407

SharePreference不能及时读取已写入的数据

SharedPreferences读取数据问题分析与处理

ch_love的博客 2123

Android sharepreference槽点及改进方案

1 概述简介 1.1 简介 众所周知,SharedPreferences是一种轻型的Android数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。它的存储位置是在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。比较经典的使用方式例如用户输入框对过往登录账户的存储。 1.2 使用方式 实现SharedPrefe

lzq520210的博客 3785
0粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值