使用SharedPreferences即时存储之后,不能即时获取到数据

在这里简介一下我所遇到的情况,由于情况非常特殊,所以我就来记录一下自己在这个方面的经历!

事由:在我所做的app中有一个视频的播放功能,因为之前做优化的时候。我听说对于视频这种比較耗费资源的应该给他独自开一个进程。

这样会使得app更加流畅。

然后,我就依照这样去做了,给视频播放独自开辟了一个进程!然后也就是说我的app中存在了两个进程,一个是默认的进程。一个是我所指定开辟的进程。然后,在视频播放页面的下方实用户对该视频进行评论的功能。而别人也能够对已对该视频进行评论的人进行回复、赞等操作。

可是前提是对已评论该视频的用户进行回复、赞的操作必需要用户已登录该app,成为当前用户(我对是否已经登陆的用户使用sharedPreference.getToken()是否为空进行推断。因为当用户登陆成功之后。我会使用sharedPreference.saveToken()来存储用户的登陆记录)。所以。依照这个思路。我先进入到了视频播放页面(此时我还未登陆)。对已经对该视频评价的用户点赞。因为我是未登录用户进行了操作,通过sharePreference.getToken()进行推断
为 空 ,然后我被强制进入到登陆页面,然后登陆成功后。

再次操作点赞。结果意外发生了!我不能获得存储已登陆成功的存储记录。

后来。我经过多种的尝试。验证是不是我的參数或者是什么调错了方法。搞了一整天才摸索到原来是两个独立进程的问题!

我尝试验证期间,假设我在默认的进程中进行了浏览过程中登陆然后进入视频的播放页面。在播放页面依旧能够通过sharedPreference.getToken()得到登陆成功的记录。

可是我假设是在第二个独立进程中,播放页面进行登陆存储成功的登陆记录。那么,即使存储成功之后也不能即时获取存储记录数据。且获取到的数据为空。

我的处理方法是,统一一个进程app。

时间: 2024-10-18 11:48:05

使用SharedPreferences即时存储之后,不能即时获取到数据的相关文章

JAVA之旅(十七)——StringBuffer的概述,存储,删除,获取,修改,反转,将缓存区的数据存储到数组中,StringBuilder

JAVA之旅(十七)--StringBuffer的概述,存储,删除,获取,修改,反转,将缓存区的数据存储到数组中,StringBuilder 讲完String,我们来聊聊他的小兄弟 一.StringBuffer概述 关于StringBuffer这个对象,Buffer是什么意思?缓冲区的意思,String一旦初始化时不可以被改变的,而StringBuffer是可以的,这就是区别,特点: StringBuffer是一个容器 可以字节操作多个数据类型 最终会通过toString方法变成字符串 存储 S

android SharedPreferences 轻量级存储!

首先在当前进程也就是当前的项目里面进行存储 SharedPreferences.Editor editor = mContext.getSharedPreferences("tvplay", Context.MODE_PRIVATE).edit(); editor.putString("video", content.getString("video")); editor.commit(); 这是存 SharedPreferences prefe

Android SharedPreferences复杂存储

我们知道SharedPreferences只能保存简单类型的数据,例如,String.int等.如果想用SharedPreferences存取更复杂的数据类型(类.图像等),就需要对这些数据进行编码.我们通常会将复杂类型的数据转换成Base64编码,然后将转换后的数据以字符串的形式保存在 XML文件中. Android SDK中并未提供Base64编码和解码库.因此,需要使用第三方的jar包.在本例中使用了Apache Commons组件集中的Codec组件进行Base64编码和解码.读者可以从

Python2爬虫获取的数据存储到MySQL中时报错"Incorrect string value: '\\xE6\\x96\\xB0\\xE9\\x97\\xBB' for column 'new' at row 1"的解决办法

由于一直使用python3进行编码,在使用Python2时,将爬虫数据连接数据库进行存储时,出现如上的报错,经查资料 是数据库编码问题. 如下转自:http://www.cnblogs.com/liuzhixin/p/6274821.html 的博客,在此感谢博主的慷慨分享之情. 错误原因:我们可以看到错误提示中的字符0xF0 0x9F 0x98 0x84 ,这对应UTF-8编码格式中的4字节编码(UTF-8编码规范).正常的汉字一般不会超过3个字节,为什么为出现4个字节呢?实际上是它对应的是智

一个实时获取股票数据的安卓应用程序

关键字:Stock,股票,安卓,Android Studio. OS:Windows 10. 最近学习Android应用开发,不知道写一个什么样的程序来练练手,正好最近股票很火,就一个App来实时获取股票数据,取名为Mystock.使用开发工具Android Studio,需要从Android官网下载,下载地址:http://developer.android.com/sdk/index.html.不幸的是Android是Google公司的,任何和Google公司相关的在国内都无法直接访问,只能

如何从Zabbix数据库中获取监控数据

做过Zabbix的同学都知道,Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示.Zabbix监控数据主要分为以下两类: 历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均值,即存储监控数据的原始数据. 趋势数据:trends相关表,趋势数据是经过Zabbix计算的数据,数据是从history_uint里面汇总的,从trends_uint可以查看到监控数据每小时最大,最小和平均值流量. Zabb

【转】如何在Windows+VS2005使用最新静态libcurl 7.35.0获取网页数据,支持HTTPS

地址: http://blog.csdn.net/hujkay作者:Jekkay Hu([email protected])关键词:Windows,curl,ssl,  visual c++ 2005, libcurl, https,网页抓取时间: 2014/2/18 1. 概述 由于Curl提供强大的网络功能,支持HTTP,HTTPS, DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP

获取WebBrowser全cookie 和 httpWebRequest 异步获取页面数据

获取WebBrowser全cookie [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref int pcchCookieData, int dwFlags, object lpRe

solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据

solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据 上一节我们完成了solr连接数据库,细心的朋友会发现一个问题,就是solr其实和语言没有任何关系,配置完成后任何语言都可以直接调用,本章我们主要对solr的查询做出讲解,然后就是新接触的人最关心的.net如何获取solr中的数据. 本节我准备了一个300万左右的数据表,为大家做演示 然后我们开始配置schema.xml 文件: <field name="id" type="string

kinect获取深度数据并显示

在上述深度帧获取的基础上,利用unity的Mesh组件,将深度帧显示出来. 工具为Unity5.6.Kinect开发包KinectForWindows_UnityPro_2.0.1410 首先讲一个Mesh的应用 Mesh有多种方式实现,这里只用最简单的,通过设定顶点组成三角形集合的方式,主要工作是设定三个属性: ①  vertices,顶点集合,Vector3类型,一般为所要显示的像素坐标集合,这里为深度帧每个像素的坐标值,其中z为深度值. 注意:Unity中顶点数量不能超过65000个. ②