eb ocket lient-【求助】WebSocketClient、service和sharedpreference的问题

问题描述

【求助】WebSocketClient、service和sharedpreference的问题
我在service里开了一个WebSocketClient,它在接收服务器消息(onMessage)之后会弹通知,声音和震动是否打开用sharedpreference保存。现在的问题是他在启动之后,我修改sharedpreference,弹通知的时候还是原来的设置,onMessage处理的时候不会获取的最新的设置。求指点

1.sharedpreference绝对写进去了,
2.WebSocketClient重启就好使了
3.我在试图重启的时候先判断WebSocketClient是否为null,不是null就关闭,可是他就是空
4.如果不判断是否null,直接关闭,会报空指针异常

详细的解说如下:
我的推送可以设置声音和震动,使用sharedpreference保存的,现在的问题是修改完声音和震动是否打开之后,service里无论是打开文件还是接收activity传过来的boolean值,log的时候都是修改之前的值,只有退出登录才能好用,不知道为什么
后来我检查了一下,只要重启WebSocketClient就行了(这个service就是管理WebSocketClient的),但是我先判断一下WebSocketClient是否为空,不为空就关闭重启,但是他不知道怎么回事,WebSocketClient就是空,不走关闭的if语句
如果不判断直接关闭又会报空指针
如果不关闭,直接再开一个新的websocket,后台每次和服务器握手的时候,会log两次,一次是修改前的一次是修改后的,然后过一会服务器发现有两个websocket,就会判断是登录了两个账号,就断开连接了
就是他明明每隔一段时间就接受一次服务器的休息,不就是不是空的吗?可是我要重启的时候他就是判断是空的,不走if
另:
service开启的时候就开始每隔几秒检查一下网络连接,一旦网络状态发生变化,就开启WebSocketClient重新连接服务器然后onMessage是监听服务器返回的消息的,然后onMessage里会用handler具体处理服务器消息,读取sharedpreference弹通知什么的。
这个handler就是上图里我在接收服务器消息的时候log的地方

时间: 2024-12-01 22:24:16

eb ocket lient-【求助】WebSocketClient、service和sharedpreference的问题的相关文章

在ECMALL里增加登陆会员才能查看代码

问题描述 在ECMALL里增加登陆会员才能查看代码 {include file=left.html} 在这段代码里增加登陆会员才能查看left.html. 相关文章 软件加密存储如何实现 phpcms 会员登陆注册-phpcms v9前台会员登陆注册总显示失败 web-系统存在平行越权问题如何解决. 会员登入-关于网站问题求解?网站可以进去就是会员登不了 java-在csdn下了一个ssh的机票预订网站,但是坑爹却没有订票的功能,要增加这个功能还要写哪些代码? 服务器怎样才能设置可以不被挂黑链?

求助CheckPoint防火墙如何通过DBEdit修改Service中的match for any属性???

问题描述 求助CheckPoint防火墙如何通过DBEdit修改Service中的matchforany属性???谢谢解决了就给分....modifyservicesSOCKETSP_1.1.2.87_7087_udp*****false

indows ervice求助-C# Windows Service 安装报错!

问题描述 C# Windows Service 安装报错! 大神们,求救,我用C#写了个Windows Service,编译和打包都成功了,但是安装到其它电脑时报错,如下图: 解决方案 你有没有添加正确installer类,其中构造函数的代码有没有出错,是否使用了绝对路径定位的文件. 解决方案二: 你是否有权限操作呢????请以管理员操作再试试!!! 解决方案三: 在自己电脑上安装是否正常呢?其他电脑环境都有吗? 解决方案四: 文件夹访问权限,是否足够. 解决方案五: 重装系统试下,把路径改成英

【求助】.net编写基于soap调用Web Service,对各位应该很容易

问题描述 要做的东西如下(图一),简单的说就是区卫生厅提供了一个WebService接口,让我们各家医院自己编写调用WebService来上传文件(实现定期自动上传,就比以前手动方便快捷).对高手或者有这方面经验的开发者而言,这应该很容易实现吧,请指点啊!感觉很头痛我以前没接触过WebService,不知道如何写这个调用,在网上查了些资料自己按着做了个VB.Net编程实现WebService的本地服务和调用的例子成功了,看上去挺容易的,可回到现实要做的(图一)中东西,发现很多都对不上,不知道如何

java web service 求助

问题描述 我是新手我想做服务端储存客户端的资料,客户端要怎么写?(或客户端怎样传资料上去)我是用Axis2做的,我的客户端想用setMemberName,就是用不到.服务端:packagevas.services;publicclassAttendanceRecord{publicStringgetMemberName(){returnmemberName;}privateStringmemberName;publicvoidsetMemberName(StringmemberName){thi

[求助] 关于Report Service 的问题,请大家帮帮忙,急!!!

问题描述 请问一个关于ReportService的问题.郁闷了我好久,一直没得到解决,不知道大家有没有碰到下面的问题.今天看了微软Webcast的SQLServer2005盛宴系列之四十一:SSRS的管理与配置,主讲老师在讲到如何为ReportBuilder创建报表模型的时候说一共有三种方法,分别是MSVS环境,还有就是页面形式的报表管理器,讲座老师演示了如何在报表管理器页面新建数据源的操作,连接类型选用的是SQLServerAS类型的,数据源创建完成再次点击,选择生成模型,相关设置之后就可以在

[紧急求助]使用Axis2做成的Web Service上传文件,文件超过100M时,内存溢出,求解决办法

问题描述 使用Axis2做成的WebService上传文件,文件超过100M时,内存溢出,求解决办法JVM的缓存已经设置的足够大了,修改缓存的方法不可行请提供其他方法或者是Axis2对上传文件的大小有限制 解决方案 解决方案二:怎么没有人回复阿解决方案三:崩溃了,怎么没有人回复阿

求助:请问大神们web service怎么组合,求简单的例子好么

问题描述 跪求大神,作为一个代码残在工科挣扎求生,求大神伸出援助之手!希望能实现多个webservice的组合 解决方案 解决方案二:你是想要相互调用吗?解决方案三:问的是关联调用?还是怎么调用?解决方案四: 解决方案五:想要知道IOPE接口匹配,就是一个服务的输出满足另外一个服务的输入,这样就能合起来组成一个综合服务

MaxCompute 2.0: Evolution of Alibaba's Big Data Service

The speech mainly covers three aspects: • Overview of Alibaba Cloud MaxCompute • Evolution of Alibaba's Data Platform • MaxCompute 2.0 Moving Forward I. Overview of Alibaba Cloud MaxCompute Alibaba Cloud MaxCompute is formerly known as ODPS, which is