如题,最好能详细点。另外求教看底层代码经验,本人新手看了下感觉逻辑复杂,无从下手!

解决方案 »

  1.   

    RIL  首先这个是用来和CP(基带处理器)通信,然后向外部发送信息的模块。
    它主要有三个部分:
    1.rild.c     (这是个精灵进程,在android 机器启动的时候就会开启,具体开启的地方在init.rc )
    2.libril.so  (这个实际是在rild.c 的main函数中进行调用,启动一个循环等待别人进行socket链接)
    3.libreference.so (这个保存着libril.so主要函数的引用,同时libreference.so的主要函数的引用也会在libril.so 中存储起来,两边互相调用)libreference.so 是从CP的端口读取数据或者写入数据的,读取数据后回调libril.so 然后libril.so 通过socket将数据给它的client,反过来你懂得!基本就是这么一个模式,具体细节需要仔细看代码了。不要被众多的函数指针给吓到,android里面(底层)多的是这个东西。你可以用笔记录下函数指针,看起来会轻松点,不然跳来跳去就忘了。
    希望对你有help!