asd5821728 2016-07-08 09:11 采纳率: 100%
浏览 6124

有大神在安卓上集成过Mqtt吗?既然Mqtt断线后可以重连,那么发送心跳还有什么意义呢?

发送心跳是为了与服务器保持通讯,让链路不被断开,但Mqtt可以监听断线,断线后执行connetionLost方法,可以在这个方法中进行重连操作,既然可以监听到断线,感觉发心跳就没有意义了,断线后重连就行了,发送心跳还会唤醒CPU,耗电..
现在我的项目就使用到Mqtt实现推送,我查了相关资料,比如微信,它是4分半钟发送一次心跳,而我现在的项目,心跳时间也设置成了4分半,但是一次连接基本上只能维持一两分钟,根本就发不了心跳..如果将心跳设置成1分钟,那电量刷刷的掉....我不发送心跳,断开后重连,也能一直保持连接啊,也能一直收到消息啊...

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
    • ¥20 腾讯企业邮箱邮件可以恢复么
    • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
    • ¥15 错误 LNK2001 无法解析的外部符号
    • ¥50 安装pyaudiokits失败
    • ¥15 计组这些题应该咋做呀
    • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?