相信使用苹果的朋友一定都遇到过微信信息推送延迟的情况。打开微信后,会转到“接收”。往往是刚刚才出现通知,但当你点击它时,却发现这是很久以前的信息。如果是关于某个物体或领导者的信息,那么游戏很可能就结束了。
大家好,我叫小睿。我们来看看苹果的推送机制。看完这篇你就知道为什么苹果的信息推送会延迟了。
1:了解墓碑机制
(相关资料图)
了解的朋友都会知道苹果的后端机制——墓碑机制,也就是俗称的假后端。所谓墓碑机制,相当于一个应用程序的运行,上面刻着——这个字样。当程序在后台挂起时,除了音乐、步骤等少数项目外,苹果的墓碑机制会冻结应用程序并记录当前状态。现在的状态就相当于墓碑上刻的字。
可以看到微信放到后台后会被冻结,从而与服务器断开连接。
2:了解信息的统一推送和接收
例如,现在A和B同时使用苹果微信,A向B发送消息。
1、当双方打开微信并在屏幕前运行时,乙方打开与甲方的聊天框,信息来自甲方微信腾讯服务器乙方微信。此时乙方收到消息,系统不需要推送通知。
乙方苹果微信上线
2、当乙方微信不在屏幕前运行时,乙方微信被冻结,不运行;或者说,乙方正在与其他人聊天。此时信息来自甲方微信腾讯服务器。腾讯服务器发现乙方微信离线或正在与他人聊天。这时,信息会发送到Apple服务器,IOS会统一推送信息,并在通知栏中弹出信息。此时乙方打开甲方聊天框,通知消失。或者此时乙方打开微信,微信已解冻,但没有收到信息,需要连接腾讯服务器。此时会出现“Receiving”,表示正在连接。连接成功后会收到甲方的信息。这也是为什么当消息来的时候,它并没有立即显示消息而是一直在转圈的原因。
乙方苹果微信离线
如果乙方使用安卓或鸿蒙系统,甲方可以随意向乙方发送消息。那么当微信同时在屏幕前运行时,就会与“1”一致。
但当乙方使用安卓或鸿蒙后台挂起微信时,微信正在运行,或者说,微信自己的推送正在运行。甲方发送消息时,消息会从甲方微信发送腾讯服务器微信内置推送会在通知栏显示该消息,微信会收到该消息。
乙方安卓或鸿蒙微信后台运行
可以看到,苹果在接收信息通知的过程中,比普通的安卓或者鸿蒙更进一步,需要通过IOS统一推送。苹果服务器不仅要处理来自不同应用程序的信息,还要接收用户。微信自带的推送只需要接收微信消息即可。因此,当苹果服务器繁忙时,腾讯服务器和微信内置推送通知很少繁忙,苹果通知经常延迟,但安卓或鸿蒙没有问题。
当然,网络也是原因之一,但是是次要的。虽然苹果的信号比安卓差,但正常情况下相差不大。当网络较差的时候,即使苹果服务器不忙,你的iPhone也不会收到苹果服务器的通知,自然会出现延迟。
三:目前有什么解决办法吗?
可以说,只要苹果的后端机制——墓碑机制不改变,那么苹果的微信就不会有微信自己的推送(别怪腾讯,即使加入了,也不会因为墓碑机制而运行),那么苹果的服务器就只能统一推送了。当苹果服务器繁忙时,消息通知总会有延迟。这只能由苹果来解决,比如增加服务器数量等等。
另外,如果网络较差,我们可以尝试改善网络。打开和关闭飞行模式、更换更好的WiFi 等。
以上就是今天的全部内容,希望对您有所帮助。我是小睿,一个2000年代出生的数码DIYer。期待您的点赞、转发和关注。