当前位置: 首页 > 科技观察

为什么微信消息只有2分钟就被撤了?恍然大悟

时间:2023-03-12 17:03:45 科技观察

古人云:“言出必行,言必难行”。这表明对所讲内容的重视程度。然而,人总是说错话!为解决“手滑”的烦恼,微信在5.3.1.16版本上线了“微信撤回”功能,并提供2分钟内发送的消息撤回选项↓↓↓用户长按已发送的消息(包括图片),在多选中选择退出。那么问题来了……为什么发送的消息可以轻易撤回?韩剧《来自星星的你》中,为了不让千颂伊看到下意识发出的“告白”短信,wuli教授不惜动用了时空穿梭和空间静止两大手段。“杀手”。其实不用羡慕杜教授。自从有了微信的撤回功能,每个微信用户都可以轻松撤回堪比超能力的消息。那么,在不使用超能力的情况下,微信是如何同时从两部手机中提取信息的呢?以MobileA向MobileB发送消息并撤回消息为例:A.MobileA发送消息时,会在微信客户端生成一条全局消息。唯一的UniqueMsgID,并将UniqueMsgID附加到要发送的消息体中。B、MobileB收到消息后,存储消息体并显示消息。C.当MobileA撤回一条消息时,MobileA知道它发送的每个消息体的UniqueMsgID,哪一个需要撤回,并将该消息的UniqueMsgID附加到withdraw命令中。D、MobileB收到提现命令后,根据提现命令中的UniqueMsgID在自己的数据库中查找对应的消息体,然后显示提现效果。为什么微信只能2分钟撤回消息?移动互联网时代把大家带入了异步信息处理时代。大多数人会花一些时间来处理消息。相比之下,两分钟似乎有点太长了。太短了,经常会遇到想退的时候发现已经过了有效期的窘境。那么,我们需要设定提款期限吗?答案无疑是肯定的。在双方的对话中,如果不设置撤回时间,会有两种危害:接收者很可能已经看到了。如果寄件人撤回,会让双方的关系更加尴尬,甚至会引起不必要的误会。B、消息发送后,如果取消时限,发送方可以撤回任何历史消息,会导致对话上下文不完整,影响用户体验。那么为什么取款时间是2分钟呢?可以多一些还是少一些?对此,微信产品团队进行了大数据分析,认为从信息接收者的角度来看,2分钟是一条消息从接收到阅读的平均时间,而撤回时间在2分钟以内,将保持上下文最大程度完好无损,给予稳定的用户体验。如果短于2分钟,发帖人可能来不及意识到消息的错误,已经错过了撤回的机会;如果超过2分钟,消息被收件人阅读的概率大大增加,发件人不会撤回。很有必要,而且撤回很久以前发送的信息也会破坏上下文连贯性,严重影响对话体验和效果。比起设置时间限制,为什么不在提款功能中提醒对方已经阅读了呢?虽然2分钟是接收和阅读消息的平均时间,但我们无法知道收件人何时会阅读发送的消息。这会导致undo功能有时不是那么及时,从而陷入著名的“薛定谔的猫”问题。那么,微信为什么不在提款功能中提醒对方消息已读呢?这样,消息的发送方就可以根据情况选择是否撤回。如果有阅读提醒的功能,那么接收方就会知道发送方已经知道自己看到了对方要撤回的消息,这样的场景会让双方都比较尴尬。更多的时候,接收者不想让发送者知道他是否已经阅读了消息。比如常见的员工-老板群,老板发消息后,如果发现员工看了消息但没有回复(比如约会等),那么随着时间的推移,老板难免会对员工感到不满。但如果没有已读或未读提醒,老板就不知道员工是否在线,员工也不必一直盯着手机看。这些设置背后的产品理念是微信不想给消息的接收者施加压力。相比发送方和接收方,微信更注重接收方的体验。为什么微信有撤回信息的文字提示?既然撤回信息给用户提供了一种后悔药,为什么吃完后还要留下“某某已撤回信息”的提示“标签”?微信的消息撤回有点像邮件撤回。发送的那一刻,对方就已经在锁屏上“通知”了,很难无迹可寻。以苹果手机为例,只要打开微信“通知显示详情”,允许手机显示微信“通知”,那么即使对方撤回的信息也能查到苹果手机的“通告”:既然大家都不是杜教授有神通,那么发布会肯定会留下痕迹。如果收件人收到通知,打开后发现没有消息,就会认为自己丢了消息,反而要求发件人重新发送,这样会让双方更加尴尬。另外,在商务谈判或贷款等一些特定场合,如果没有文字提示撤回信息,也会造成对方利益的损失。比如知乎网友提到的借用问题:从功能开发的角度来看,提现功能的诞生是考虑到打错字或者发错人等正常使用场景。对于那些特殊的场景(如情侣吵架等),用户在发送消息前应尽量克制情绪,避免“一时冲动”,以免错过撤回时间,不幸酿成“大祸””。