public class AutoReLoginDaemon
extends java.lang.Object
本类的存在使得MobileIMSDK框架拥有通信自动治愈的能力。
注意:自动登陆(重连)只可能发生在登陆成功后与服务端的网络通信断开时。
本线程的启停,目前属于MobileIMSDK算法的一部分,暂时无需也不建议由应用层自行调用。
LocalDataSender.SendLoginDataAsync
,
ConfigEntity
限定符和类型 | 字段和说明 |
---|---|
static int |
AUTO_RE$LOGIN_INTERVAL
自动重新登陆时间间隔(单位:毫秒),默认3000毫秒。
|
限定符和类型 | 方法和说明 |
---|---|
java.util.Observer |
getDebugObserver()
!
|
static AutoReLoginDaemon |
getInstance() |
boolean |
isAutoReLoginRunning()
线程是否正在运行中。
|
boolean |
isInit()
本类对象是否已补初始化过。
|
void |
setDebugObserver(java.util.Observer debugObserver)
!
|
void |
start(boolean immediately)
启动线程。
|
void |
stop()
无条件中断本线程的运行。
|
public static int AUTO_RE$LOGIN_INTERVAL
此参数只会影响断线后与服务器连接的即时性,不受任何配置参数的影响。请基于重连(重登陆)即时性和手机能耗上作 出权衡。
除非对MobileIMSDK的整个即时通讯算法非常了解,否则请勿尝试单独设置本参数。如需调整心跳频率请见 ConfigEntity.setSenseMode()。
public static AutoReLoginDaemon getInstance()
public void stop()
本线程的启停,目前属于MobileIMSDK算法的一部分,暂时无需也不建议由应用层自行调用。
public void start(boolean immediately)
无论本方法调用前线程是否已经在运行中,都会尝试首先调用 stop()
方法,以便确保线程被启动前是真正处
于停止状态,这也意味着可无害调用本方法。
本线程的启停,目前属于MobileIMSDK算法的一部分,暂时无需也不建议由应用层自行调用。
immediately
- true表示立即执行线程作业,否则直到 AUTO_RE$LOGIN_INTERVAL
执行间隔的到来才进行首次作业的执行public boolean isAutoReLoginRunning()
public boolean isInit()
init
。public java.util.Observer getDebugObserver()
public void setDebugObserver(java.util.Observer debugObserver)
debugObserver
- DEBUG事件观察者