【Telephony】Telephony总纲!Phone进程流程(AOSP)

本文详细描述了AOSP中Phone进程的启动流程,重点讲解了PhoneApp的初始化、PhoneGlobals中的关键步骤,特别是PhoneFactory.makeDefaultPhone()方法,以及IMS功能的简要介绍。文章旨在为读者提供基础架构学习和未来需求参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

本来想附上代码的,但是有很多芯片厂商以及公司内部的方案在上面,不好公开…
你可以对照着我这些注释,去自个公司项目或者http://aospxref.com/这类开源网站上查代码
补充一点,文章是我在一年多前写的,只提供学习方法不具备时效性

整个Framework层的Telephony框架运行在一个叫做Phone(com.android.phone)的进程中。
在我写的《SIM卡加载流程解析》文章中提到过“在Phon进程启动过程中,在流程第三步PhoneFactory.makeDefaultPhone()方法中创建了UiccContorller的对象”能说明这一点。Phone进程启动的过程中,会初始化非常多的分支功能,SIM卡流程初始化就是其中之一,所以我觉得有必要写一下Phone进程的框架
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/af413c6a67c748f68e3be5cff790a8bf.png

二、Phone进程启动流程

在这里插入图片描述
tips:
这个是我网上随便找的老古董流程图,谷歌《AOSP Phone进程启动流程图》,对照着这个地图去找在项目中对应的类与函数,对比AOSP与芯片厂商定制版印证中学习,这是一个比较好的学习方法。

Phone进程启动如图上所示,根据流程图在代码中的Telephony模块查找,启动:

1、PhoneApp.java

在Unisoc项目中,PhoneApp类注释表明Phone进程是优先级最高的应用程序类。
在这里插入图片描述
PhoneApp的onCreate()做了:
1)创建PhoneGlobals对象并初始化。
2)创建CallForwardHelper实例
3)电信账户注册实例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值