有网却打不通电话?你又被手机信号图标骗了!

电脑爱好者 2016-08-06 09:01

你有没有发现手机的信号图标是一种特别不靠谱的东东?有时还有2格信号但就是打不了电话;有时明明是0格信号却能通话正常。这到底是咋回事呢?

01

信号强度到底咋看

真正的老司机在判断手机信号好坏时从来不看图标,他们都是进入“手机设置→关于手机→状态消息”,通过“信号强度”的2组数字加以辨别。

02

Android手机定义了2种信号单位:

dBm(分贝毫瓦)

asu(独立信号单元)

二者的关系是:dBm=-113+2×asu

有关为啥用它们作为信号强度的原因,和具体的计算流程是一个很复杂的事情,估计大家也懒得花时间研究,所以小编就直接给出结论得了。那就是:

代表手机信号强的dBm值一定是负数,所以它的数值越大,就代表信号越强注意要考虑到正负号哦,如果抛开-负号的干扰,那就是dBm的绝对值越小,信号越强……好绕,大家理解了吗?)

比如,信号为-60dBm时信号就要远远优于-90dBm。根据前面的计算公式,当信号强度为-60dBm时,asu计算可得为26.2;当信号强度为-90dBm时,asu为11.5。由此可知,asu也是数值越大信号越好!

信号图标就是个翻译

理论上,如果信号强度为-50dBm~0dBm,那就说明手机信号好的一塌糊涂,此时你一定正站在基站旁边;

如果信号强度为-90dBm~-60dBm,那说明你的信号一切正常,不可能存在通话不畅。什么?这个强度时还打不了电话?那此时不是你的手机硬件有问题,就是运营商那头出现了故障;

如果信号强度小于-115dBm,那手机基本就会处于脱网状态,也就是0格信号的模式,电话提示不在服务区或暂时无法接通。

知道问题的所在了吗?没错,就是没有人硬性规定多少强度的信号等于几格信号!

有些手机厂商为了彰显产品信号杠杠的,可能会设定-105dBm时都有2格信号,只要超过-90dBm就敢标为满格。有些厂商可能比较实在,大于-80dBm才会标满格,小于-100dBm时就显示1格。

反正,信号图标就是信号实际强度的翻译而已,至于翻译水平和标准?厂商说了算。换句话说,是rameworks/base/telephony/Java/android/telephony/SignalStrength.java配置文件中getLteLevel()对应的几行代码在起作用。

03

所以,我们不要迷信手机信号栏的信号图标,出现通话失败时,要通过信号强度加以判断故障原因。此外,信号强度是一个不断变化的浮动值,室外肯定要优于室内,甚至我们改变持握手机时的位置也会影响到信号(当年iPhone 4的“死亡之握”就是天线位置设计有缺陷造成的)。

404 Not Found

404 Not Found


nginx