Android RIL 调试分析全记录(3)

6. 所遇问题分析总结:

1)No APN found for carrier: 46xxx

改一下apn-conf-sdk.xml文件吧,将所对应的46xxx的APN信息写入即可。

2)  网络注册失败,出现:

AT+CGREG?

+CGREG: 1,0

AT+CREG?

+CREG: 2,0

我发现有几种情况:

1>没插SIM卡;

2>信号不好(一般3G出现低于100的信号值,说明信号强度太差,无法注册);

3>AT+CFUN=4关机命令,即使后面用了AT+CFUN=1开机,可能因为开机需要时间延迟,造成无法注册,这是我发现的比较诡异的地方,需要咨询一下供应商。

3)pppd call cmnet:   connect script failed!   pppd exited with 8

发现出现这个错误的原因比较复杂,不一定是真正的cmnet与cmtc-isp两个脚本的问题,按我的经验发现,如果connect script failed!错误出现紧跟着Starting pppd, 那应该是

真正的脚本有问题;如果间隔时间较长,那就不应该是脚本的问题了,脚本语法问题程序很快能检查出来,通常这样的可能是通道通信的问题,rild与pppd用的同一个串

口通道,也可能造成这个错误,通常都会有2-3个通道,换成另一个tty通道就可以了,我想了如下一个办法来调试这个错误:

1>删除文件/etc/init.gprs-pppd,重启后,系统不会用pppd自动拨号;

2>手动拨号, 运行如下命令:

#pppd call cmnet &

第一次运行会出现错误:

Removed stale lock on ttyACM2 (pid 259)

Failed to open /dev/ttyACM2: I/O error

再运行一次:

Serial connection established.

Using interface ppp0

Connect: ppp0 <--> /dev/ttyACM2

Remote message: Login OK

PAP authentication succeeded

local  IP address 10.77.48.209

remote IP address 192.200.1.21

primary   DNS address 211.136.112.50

secondary DNS address 211.136.20.203

目前还不知道为什么这样,正在查,有高手可以指点一下。

另外出现这个问题可能还有其它原因,按出现的时间来看,我认为是比较好的一个排查问题的方法。

附:与xxxx聊天解决问题记录,以供大家参考,可能会有点用(注意,时间要从下往上看呀)

在 2010年12月24日 下午4:43,xxxx写道:

另外,还有一些问题:

我现在这种上网是跟Android完全没有关系的。还没有跟上层完成数据传输。

要完成跟上层的数据传输,就必需要实现要正确的返回我刚才问你的那个问题“GET_IMEI”, "GET_IMSI",

因为这两个返回了,android才能完成与apns-conf.xml文件中的numeric值的匹配。

麻烦指点下,我上面这个理解对不对。还有你现在的apns-conf.xml中主数据可以写入telephony.db数据库吗?

在 2010年12月24日 下午4:39,xxxx写道:

方便就留个联系方式,改天请你吃个便饭。交个朋友。

在 2010年12月24日 下午4:29,xxxx写道:

恩。这个必需的。。。

你也在深圳吧?

在 2010年12月24日 下午4:29,xxxx写道:

# ping 220.181.112.76

PING 220.181.112.76 (220.181.112.76) 56(84) bytes of data.

64 bytes from 220.181.112.76: icmp_seq=1 ttl=50 time=2646 ms

64 bytes from 220.181.112.76: icmp_seq=2 ttl=50 time=1659 ms

64 bytes from 220.181.112.76: icmp_seq=3 ttl=49 time=679 ms

64 bytes from 220.181.112.76: icmp_seq=5 ttl=49 time=185 ms

64 bytes from 220.181.112.76: icmp_seq=6 ttl=50 time=181 ms

64 bytes from 220.181.112.76: icmp_seq=7 ttl=49 time=198 ms

64 bytes from 220.181.112.76: icmp_seq=8 ttl=49 time=185 ms

64 bytes from 220.181.112.76: icmp_seq=9 ttl=50 time=202 ms

原来什么都不用设置就可以拨号成功了?和linux下面的是一样的,只是这么弄好像上层根本响应不到。

在 2010年12月24日 下午4:26,xxxx写道:

I/pppd    ( 2319): Connect: ppp0 <--> /dev/ttyUSB5

D/pppd    ( 2319): sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x7b8e6e14> <pcomp> <accomp>]

D/pppd    ( 2319): rcvd [LCP ConfReq id=0x0 <mru 1500> <asyncmap 0xffffffff> <auth pap> <magic 0x11223344> <pcomp> <accomp>]

D/pppd    ( 2319): No auth is possible

D/pppd    ( 2319): sent [LCP ConfRej id=0x0 <auth pap>]

D/pppd    ( 2319): rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x7b8e6e14> <pcomp> <accomp>]

D/pppd    ( 2319): rcvd [LCP ConfReq id=0x1 <mru 1500> <asyncmap 0xffffffff> <magic 0x11223344> <pcomp> <accomp>]

D/pppd    ( 2319): sent [LCP ConfAck id=0x1 <mru 1500> <asyncmap 0xffffffff> <magic 0x11223344> <pcomp> <accomp>]

D/pppd    ( 2319): sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]

D/pppd    ( 2319): sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]

D/pppd    ( 2319): rcvd [LCP ProtRej id=0x2 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]

D/pppd    ( 2319): sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]

D/pppd    ( 2319): rcvd [IPCP ConfReq id=0x3 <addr 192.168.0.1>]

D/pppd    ( 2319): sent [IPCP ConfAck id=0x3 <addr 192.168.0.1>]

D/pppd    ( 2319): rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]

D/pppd    ( 2319): sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]

D/pppd    ( 2319): rcvd [IPCP ConfNak id=0x2 <addr 10.233.0.103> <ms-dns1 120.196.165.7> <ms-dns3 221.179.38.7>]

D/pppd    ( 2319): sent [IPCP ConfReq id=0x3 <addr 10.233.0.103> <ms-dns1 120.196.165.7> <ms-dns3 221.179.38.7>]

D/pppd    ( 2319): rcvd [IPCP ConfAck id=0x3 <addr 10.233.0.103> <ms-dns1 120.196.165.7> <ms-dns3 221.179.38.7>]

I/pppd    ( 2319): local  IP address 10.233.0.103

I/pppd    ( 2319): remote IP address 192.168.0.1

I/pppd    ( 2319): primary   DNS address 120.196.165.7

I/pppd    ( 2319): secondary DNS address 221.179.38.7

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwszyj.html