默认

移动端IM实践:实现Android版微信的智能心跳机制

查看数: 281021 | 评论数: 14 | 收藏 30
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2016-03-03 21:55

正文摘要:

本文由微信开发团队人员编写,转自 WeMobileDev,感谢。 一 引言 在2013年11月中旬时,因为基础组件组人手紧张,Leo安排我和春哥去广州轮岗支援。 刚到广州的时候,Ray让我和春哥对Line和WhatsApp的心跳机制进 ...

评论

JackJiang 发表于 3 年前
引用:椎锋陷陈 发表于 2021-09-08 09:52
不知道微信此智能心跳机制在Android 6.0的低电耗模式与应用待机模式推出后是否有所调整,因为在设备「 ...

微信是app中的高富帅,厂商都会跪舔,不能按常理去理解的。。。
椎锋陷陈 发表于 3 年前
引用:微信进入后台(或者前台关屏)时,先用几次最小心跳维持长链接。然后进入后台自适应心跳计算


不知道微信此智能心跳机制在Android 6.0的低电耗模式与应用待机模式推出后是否有所调整,因为在设备「前台关屏」且非充电状态下进入此模式后,
Android系统是会阻止应用的网络访问和延迟JobScheduler、AlarmManager的,这种情况下以最小心跳维持长链接的做法估计会失效。

当然很多厂商会赋予微信许多特权,比如华为手机上应用的自启动管理,默认的自动管理下,微信是被开放了「自启动权限」、「关联启动权限」及「后台启动权限」的,
而其他应用默认这三项都是禁止的,当把微信的这三项权限都关掉后,也是会有消息收取可能不及时的提示的。

不过可以肯定的是,其他应用肯定是无法把微信的智能心跳机制直接套用的,还是需要另外针对后面Android系统的几个变化进行适配,不过文章也提供了许多不错的思路,值得借鉴。
elan 发表于 5 年前
为啥国内外NAT超时时间差那么多
ming06007 发表于 6 年前
学习一下!
jecelyin 发表于 6 年前
没学会啊。
devilxie 发表于 6 年前
膜拜吧
liaoWorking 发表于 7 年前
cool!!
JackJiang 发表于 7 年前
引用:Alexwong 发表于 2017-06-04 23:38
很少看到这么有钻研精神的了,值得学习. 现在遇到问题都是百度,谷歌的

微信团队的人很有工匠精神
Alexwong 发表于 7 年前
很少看到这么有钻研精神的了,值得学习. 现在遇到问题都是百度,谷歌的
晓光 发表于 8 年前
写的挺细,感谢分享
什么狗屁云 发表于 8 年前
好文,先收藏了
JackJiang 发表于 8 年前
这里面的一些数据,在实现类似IM时,确实有一定的参考价值。
JackJiang 发表于 8 年前
这文章虽然写的稍显混乱,但确实挺有钻研精神的,
在移动端即时通讯开发资料这么匮乏的情况下,这样的资料已经非常珍贵了。
IMDeveloper 发表于 8 年前
微信团队的这帮开发人员,确实挺钻的,文章里的一些数据,理论上应该也都是黑盒分析出来的,虽不足够准确,但做为参考还是有一定的价值。
即时通讯开发时这样的资料确实非常少,赞一个!

返回顶部