安卓平台的telephony相关的实现符合安卓平台的架构,分framework层native层和驱动层,对telephony来说驱动也就是bp,所以相关问题的分析大致分为三层去查看。
framework层:
callTracker
关键字搜索:
dial
hangup
call_state_changed
get_current_calls
last_fail_cause
AT层(MTK平台的native层):
关键字搜索:
ATD/ATA
CHUP
CHLD
ECPI/ESIPCPI
CLCC
ESRVCCTRF
modem层:
关键字搜索:
型号强度:
移动信号强度的查看可以参考如下FAQ:
[FAQ19224][TDSCDMA]How to check 3G TD-SCDMA Serving cell and the related information
关于解码及信号强度的定义:
MSG_ID_LAPDM_DL_AND_UL_IND这条消息主要是LAPDM帧传输的啥内容以及是不是坏帧的指示。
信号质量:
MSG_ID_MPAL_RR_SERV_DEDI_MEAS_IND这条消息里面指示的信号强度或是质量等是是下行的。这个是MTK自己内部定义的语句,但是里面的参数都是对应45.008的。
从MSG_ID_MPAL_RR_SERV_DEDI_MEAS_IND可以看到信号的质量指示,一般的话信号质量很差都会6或者7.那么这个数字在SPEC是有定义其具体对应的范围的,RXQUAL_7代表接收误码率超过12.8%.如果这段时间内信号质量一直很差,基本可以判断网络存在问题了。此时手机在这样的网络条件下通话就会可能存在问题。
-----------------------------------------------------------------------------------
TS45.008 8.2.4 Range of parameter RXQUAL
RXQUAL_0 BER < 0,2 % Assumed value = 0,14 %
RXQUAL_1 0,2 % < BER < 0,4 % Assumed value = 0,28 %
RXQUAL_2 0,4 % < BER < 0,8 % Assumed value = 0,57 %
RXQUAL_3 0,8 % < BER < 1,6 % Assumed value = 1,13 %
RXQUAL_4 1,6 % < BER < 3,2 % Assumed value = 2,26 %
RXQUAL_5 3,2 % < BER < 6,4 % Assumed value = 4,53 %
RXQUAL_6 6,4 % < BER < 12,8 % Assumed value = 9,05 %
RXQUAL_7 12,8 % < BER Assumed value = 18,10 %