展讯平台 socket使用常见疑问解答及接口调用示例
1. 请问一次完整的 socket 通信流程是怎样的呢?
完整的 socket 通信流程主要包括:
1)GPRS PDP 激活;
2)数据通信(通过 socket 接口收发数据);
3)GPRS PDP 去激活;
PDP 激活操作类似于给 PC 接上网线,表示将终端连到网络;网络连接成功后,本
地应用通过一个或多个 socket 进行通信,来传输数据;而应用使用完毕后,应及时进
行 PDP 去激活操作,表示断开终端同网络之前的连接。
2. 我应该怎样激活 GPRS PDP呢?
如果 gprs 应用采用一个 task 来实现,方法如下 ( 不含异常处理 ) :
1、注册 gprs 消息。
SCI_RegisterMsg(MN_APP_GPRS_SERVICE,
(uint8)EV_MN_APP_SET_PDP_CONTEXT_CNF_F,
(uint8)(MAX_MN_APP_GPRS_EVENTS_NUM-1),
SCI_NULL);
2、发起 pdp 激活请求。
MNGPRS_SetAndActivePdpContextEx ();
3、等待接收 APP_MN_ACTIVATE_PDP_CONTEXT_CNF。
4、收到 APP_MN_ACTIVATE_PDP_CONTEXT_CNF后,如果消息中 result 值为 0,则pdp激活成
功了。
5、与网络进行数据通信。
展讯 mocor平台gprs 应用是在 mmi task 中实现的, gprs 消息已经注册过了。
因此客户基于该平台开发 socket 通信应用时,无需重新注册 gprs 消息。只需发起