MTK SOCKET CONNECT 错误分析

今天在写connect的时候,遇到了如下问题

 

 在connect返回soc_wouldblock消息后,注册了SetProtocolEventHandler(qqt_socket_feedback , MSG_ID_APP_SOC_NOTIFY_IND );

 在 qqt_socket_feedback 老是connect不成功,错误信息为 SOC_BEARER_FAIL

 在网上查了下,给出的提示是:

在这里 app_soc_notify_ind_struct 里会经常捕捉到错误的 SOC_CONNECT 消息,这时 app_soc_notify_ind_struct 里的 result 为 KAL_FALSE, soc_error_enum 为 -14 ( SOC_BEARER_FAIL ),表示建立连接失败。分析了原因,有以下几个原因,一、 soc_create 时的 nwk_conunt_id 弄错了,二、 soc_connect 的 IP 和端口弄错了,三、手机卡,没话费了,四、手机卡没有开通 GPRS 。

我想了下,以上的问题都没有存在,然后突然想到了,我的代码是在开机的时候就运行了,这个时候存在的问题是SIM还没有注册完成,也就是说SIM还没有与网络连接上,所以就导致了我遇到的这个问题,加一个是否搜网完成的判断就OK了。

很多时候,我们看别人的代码感觉懂了,但是等到自己真的去code的时候,发现几乎没什么是懂的,所以要像掌握真正的知识,还是需要动手的。

posted on 2012-02-01 17:52  景树园  阅读(1483)  评论(1编辑  收藏  举报

导航