Telegram 注册时那个转圈:它是在做事,还是已经卡住了
注册的时候,你点了下一步,然后看到一个小圈在转。
而大多数人会做一件事:盯着它。
盯三十秒,然后开始想"它是不是卡了"。
而这个"想",其实是问错了问题。
因为那个圈,根本不回答"卡没卡"这件事。
为什么?
因为那个动画,是"你的手机画的",不是"服务器画的"。
也就是说:只要你的手机没死,那个圈就能一直转下去——而它转不转,和你那个请求有没有成功,一点关系都没有。
所以那句可以这样记:那个圈是"你的手机在转",不是"服务器在转"——所以它转得再顺,也不代表请求发出去了。
而这就带出了那句更狠的:转圈这件事,本身不告诉你任何事——因为它画的是"我在等",而不是"我真的在等"。
而这,就是这一篇要解决的核心。
怎么判断它还在不在做事
接着说,因为既然圈不可信,那就得找一个可信的东西。
而可信的东西,是"有没有在变"。
也就是说:界面上的别的部分,有没有在动。
几个可以看的:
第一个:倒计时。
如果那个"重新发送"后面有个数字在往下走——那说明界面还在"跟服务器对时间",也就是说:这条链路是通的。
第二个:文字。
如果那句"请稍候"后面跟着的说明变了(比如从"正在连接"变成"正在验证"),那说明它确实在往前走。
第三个,也是最好用的:切出去再回来。
也就是说:你切到别的界面,再切回来。
而这时候会有两种情况:
如果它变成了"失败"或者"重试"——那说明这件事早就结束了,只是你没看到结果。 而如果它还是那个圈——那说明它真的还在。
所以那句可以这样记:判断"它还在不在做事",别看那个圈,看别的地方有没有在变——因为真正在等的东西,通常是静止的。
而"切出去再回来"这一招,之所以好用,是因为它"刷新"了你的视角。
你原来看到的是"一个一直在转的圈",而切一下之后,你看到的是"这件事现在的状态"。
而这两者,差得很远。
和网络有关系吗
再说你问的这个。而有,而且关系很大。
但这一条要说清一个区别:
"网络断了"和"网络到不了",是两件不同的事。
"断了"很好判断——界面通常会直接告诉你"无网络"。
而"到不了",是最麻烦的那种。
也就是说:你的网络是通的(能刷别的、能打开别的),但它"到不了它要去的地方"。
而这种情况,表现就是"一直转"。
所以那句可以这样记:转圈和网络的关系,不是"网断了",而是"网在,但它到不了"——而后者比前者更难看出来。
那怎么判断是不是这一种?
有一个很简单的对比:
去看一个"同样需要外网"的别的功能,它通不通。
如果别的也不通——那就是"到不了"。 如果别的都通,只有这个不行——那大概不是网络的问题,而是"这个请求本身"的问题。
而这个对比,能让你少走很多弯路——因为"网络问题"和"账号问题"的处理,完全不一样。
至于具体怎么排查网络那边(比如代理怎么设、为什么设了还是不行),我在讲网络排查的那篇里写过。这里只提醒一句:换一个网络试一次,是最省事的第一次尝试——因为它能立刻把"网络问题"和"别的问题"分开。
"请稍候"的意思是"我在干活"
再说这个词,因为它的名字很有欺骗性。
"请稍候"这句话的意思,其实是"我在干活"。
也就是说:它在告诉你"别急,我在处理"。
而它没有告诉你一件事:
"要稍候多久"。
而"多久"这件事,才是你真正关心的。
所以那句可以这样记:"请稍候"这句话的意思是"我在干活"——而它没有告诉你"要稍候多久",而那才是问题所在。
而这里有一个很实际的推论:
如果一个"请稍候"停得太久,那它其实不是"在干活",而是"在等一个不会来的回答"。
而"多久算太久"?
这个我不给秒数——因为不同网络、不同时段差别很大。
但我可以给一个判断法:
"比你平时做同样事情的时间,长很多"——那就该怀疑了。
而这个"平时"是你自己知道的,而我不知道。
(顺便说清一件事:如果你看到的是"输完验证码之后没反应",那和这一篇说的"页面在转"不是一回事。那个我在讲验证码框的那篇里写过——那里说的是"提交之后为什么没有反馈",而这一篇说的是"那个转圈本身是什么"。)
能不能中途退出去重来
现在说你问的这个。而它有一个很清楚的判断法:看你退到哪一步。
因为"退出重来"的代价,在三个阶段是不一样的。
第一个阶段:还没输验证码。
也就是说:你还在填号码、或者还在等验证码。
那这时候退出重来,几乎是没有代价的。
为什么?
因为这时候"账号还没建出来"——所以没有任何东西需要保住。
第二个阶段:验证码已经发了,但你还没填。
那这时候退出重来,代价是"可能多花一次重发"。
为什么?
因为"重发"是有次数限制的(关于那个限制怎么算、以及哪些行为会加重它,我在讲验证码失败计数的那篇里写过)。
所以这时候"退"不是不能退,而是要"少退几次"。
第三个阶段:验证码已经过了。
那这时候,你的账号可能已经建出来了。
而"退出"这件事,就不再是"重来",而是"我要不要登回去"。
所以那句可以这样记:"中途退出重来"的代价,取决于你退到哪一步——在验证码之前,它是免费的;在验证码之后,它可能花掉你一次重发。
那"什么时候不该硬等"?
我的答案是这样:
如果你已经等了"明显比你平时久",而且"切出去再回来"还是那个圈——那就退。
因为"真在处理"的东西,通常不会拖这么久——而"拖这么久还不动"的,多半是"那个回答不会来了"。
要不要重装
最后说你问的这个,而它是所有选项里的"最后一招"。
为什么?
因为重装有一个代价,而那个代价,取决于一件事:你这个号,建出来了没有。
如果还没建出来——那重装基本没什么可丢的(因为你还没有"东西"存在那个号里)。
而如果已经建出来了——那就要小心了。
因为重装会清掉"本地的数据",而你如果没记密码、没设恢复邮箱,那重装之后可能就"进不去了"。
所以那句可以这样记:重装之前先问一句"我这个号建出来了没有"——因为重装会清掉本地的东西,而如果那是你唯一的入口,你就没退路了。
而在这个前提之下,重装之前的顺序应该是:
第一步:换一个网络试一次。
第二步:把飞行模式开一下再关,让它重新连一次。
第三步:等一会儿,再试。
第四步:才考虑重装。
而"要不要清缓存"这件事,我在讲注册失败的那篇里写过——那里说的是"重装之前还有哪些更轻的动作可以做"。而这一篇只提醒一句:轻的先做,重的后做。
所以那句可以这样记:重装是"最后一步",因为它是唯一一个"做了就回不去"的动作。
而"回不去"这三个字,值得记住。
因为前三种做法(换网、重连、等),都是"可以撤销的"——而重装不是。
两个常被问到的
第一个问题:转圈的时候,能不能点别的地方?
能,而且"点不点得动"本身就是一个判断依据。
因为你去点别的地方,界面会给你反馈——而那个反馈能告诉你"这个 App 还活不活着"。
而这里有一个很关键的区分:
如果"点得动,但它还在转"——那说明 App 活着,卡住的是"那个请求"。 而如果"连点都点不动"——那说明卡住的是"你手机这一侧"。
所以那句可以这样记:"点得动但一直转"和"连点都点不动",是两个完全不同的问题——前者是请求出不去,后者是手机那边卡了。
而这个区分很实用,因为它们的处理不一样:
前者该做的是"换网络、或者等着"。 而后者该做的是"等一会儿让它缓过来,或者关掉重开"。
而如果你把这两个搞反了——比如"手机卡了"你却去折腾网络,那就白忙一场。
第二个问题:我重试了很多次,会不会把号"弄坏"?
这一条要分两种"坏"。
第一种:临时被挡住。
也就是说:因为试得太频繁,那个号被"限一会儿",不让你继续试。
而这一种,是会自己好的——而"多久好"我不给数字,因为各情况不一样。
第二种:号本身出问题。
而这一种,我不确定它存不存在——所以我不会编一个说法出来。
而在实际中,你遇到的大概率是第一种。
所以那句可以这样记:重试太多次,最常见的结果不是"号坏了",而是"这个号被临时挡住了一阵"——而那一阵,是会过去的。
那怎么避免?
一条很朴素的原则:别连着点。
也就是说:真到了要重试的时候,就"隔一阵试一次",而不是"一秒点三次"。
而这个原则的道理,其实和前面说的"限制的目的就是让你停"是同一条——你越急,它越不放你走。
(关于"重试次数是怎么算的、以及哪些动作会让它更久",我在讲验证码失败计数的那篇里写过。那一篇给的是"机制",而这一篇给的是"心态"。)
几个常见的坑
第一个坑,是盯着那个圈判断"卡没卡"。而那个圈是你手机画的。
第二个坑,是只看"转不转",不看"别的地方有没有在变"。而"在变"才是真信号。
第三个坑,是把"网络到不了"当成"网络断了"。而前者不报错,只是转。
第四个坑,是在验证码已经过了之后反复退出重来。那对面已经是"你的号"了。
第五个坑,是没想"号建出来了没有"就重装。而那可能让你进不去。
最后
如果只用三句话记住这篇,我希望是这三句话。
那个转圈是"你的手机在转",不是"服务器在转"——所以它转得再顺,也不代表请求发出去了。它画的是"我在等",而不是"我真的在等"。所以判断"它还在不在做事",别看那个圈,看别的地方有没有在变:倒计时在走、文字在变、或者你切出去再回来它变成了"失败"。
而"一直转"最常见的原因,不是"网络断了",而是"网在,但它到不了"——因为"断了"会报错,而"到不了"只会转。所以最省事的第一次尝试是换一个网络,或者拿别的外网功能对比一下。
最后两条:"中途退出重来"的代价取决于你退到哪一步——在验证码之前它是免费的,在验证码之后它可能花掉你一次重发,而验证码已经过了之后,那就不是"重来"而是"要不要登回去";而重装是最后一步,因为它是唯一一个"做了就回不去"的动作,所以重装之前先问一句"我这个号建出来了没有"。