android 系统上做GC双模的--modem 的被动消息处理
来源:互联网 发布:图片分类展示网站源码 编辑:程序博客网 时间:2024/06/07 15:28
一、概述
在android 上做双模手机,CDMA EVDO模块主动上报消息在ril 层,应用层必须要做处理;
ril层主要是解析 URAT 上报指令,通过socket 传给java层,有java 来提示给用户
二、unsolicited 消息从modem上报到java的流程。
c++部份
readerLoop()
line = readline();
processLine(line);
handleUnsolicited(line);
if (s_unsolHandler != NULL) {
s_unsolHandler (line1, line2);//实际执行的是void onUnsolicited (const char *s, const char *sms_pdu)
if (strStartsWith(s,"+CRING:")
|| strStartsWith(s,"RING")
|| strStartsWith(s,"NO CARRIER")
|| strStartsWith(s,"+CCWA")
)
RIL_onUnsolicitedResponse (RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED, NULL, 0);
p.writeInt32 (RESPONSE_UNSOLICITED);
p.writeInt32 (unsolResponse);
ret = s_unsolResponses[unsolResponseIndex].responseFunction(p, data, datalen);
ret = sendResponse(p);
sendResponseRaw(p.data(), p.dataSize());
ret = blockingWrite(fd, (void *)&header, sizeof(header));
blockingWrite(fd, data, dataSize);
java部份
ril.java->RILReceiver.run()
for(;;)
{
...
length = readRilMessage(is, buffer);
p = Parcel.obtain();
p.unmarshall(buffer, 0, length);
p.setDataPosition(0);
processResponse(p);
processUnsolicited (p);
response = p.readInt();
switch(response) {
...
case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: ret = responseVoid(p); break;
...
}
switch(response) {
case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED:
if (RILJ_LOGD) unsljLog(response);
mCallStateRegistrants
.notifyRegistrants(new AsyncResult(null, null, null));
...
}
- android 系统上做GC双模的--modem 的被动消息处理
- android 系统上做GC双模的--modem 的被动消息处理
- android 系统上做GC双模的---数据业务的处理分析
- android 系统上做GC双模的---数据业务的处理分析
- android 系统上做GC双模的--音频通路等相关设计分析
- android 系统上做GC双模的--音频通路等相关设计分析
- 在android 2.2 上开发GC双模手机的考虑---RIL电话管理的设计
- 在android 2.2 上开发GC双模手机的考虑---RIL电话管理的设计
- android 消息推送,手机被动接收类似通知的短消息
- android 平台的双模的RIL设计
- android 平台的双模的RIL设计
- android平台双模的ril设计
- modem上各种指示灯的意义
- 深入理解 Android消息处理系统的原理
- 深入理解 Android消息处理系统的原理
- Android系统中异步消息处理线程机制的理解
- Android 消息处理系统 Handler的一些介绍
- Android消息处理系统
- Windows完成端口与Linux epoll技术简介
- 获取网卡,网络设置,ip设置,dns,wins
- 在android 2.2 上开发GC双模手机的考虑---RIL电话管理的设计
- IE8+上传文件时javascript取文件的本地路径的问题C:/fakepath/
- CEditView 中如何像记事本一样自动换行
- android 系统上做GC双模的--modem 的被动消息处理
- 使用grub4dos引导和安装linux系统
- 基于数组的位运算1 数组位的基本运算
- 1.1 问题
- C++各大有名库的介绍
- android 系统上做GC双模的---数据业务的处理分析
- 虚拟机上网的方法
- android 系统上做GC双模的--音频通路等相关设计分析
- 对AU3实现Realtek HD声卡前置音频调节代码的修正