Android6.0 Telephony流程分析——PhoneApp啟動主要類關係分析
本文程式碼以MTK平臺Android 6.0為分析物件,與Google原生AOSP有些許差異,請讀者知悉。
PhoneApp(包名com.android.phone)主要程式碼位於
packages/services/Telephony/
frameworks/opt/telephony/
frameworks/base/telephony/
com.android.phone程序是persistent的,在開機過程中被ActivityManagerService自動啟動,下圖為該程序啟動將要涉及到的類(以GSMPhone為例),圖中類之間的關係表達可能不太準確,僅供參考。
右鍵複製圖片地址,在瀏覽器中開啟即可檢視大圖。
未完待續,有不對的地方,請指正。
相關推薦
Android6.0 Telephony流程分析——PhoneApp啟動主要類關係分析
本文程式碼以MTK平臺Android 6.0為分析物件,與Google原生AOSP有些許差異,請讀者知悉。 PhoneApp(包名com.android.phone)主要程式碼位於 packages/
Android6.0 Telephony Frameworks之資料業務建立流程
資料業務(資料網路,即SIM卡上網)的建立需滿足兩個條件:1.選擇並激活合適的APN;2.PS域已處於Attached狀態。預設狀態下,手機開機後就會發起PS附著的信令給網路。而所有資料網路的請求(開啟關閉資料開關、切換資料卡、修改APN等)都必須經過DcTacker.ja
android6.0預設Home(Launcher3)的啟動分析
Launcher是預設的桌面應用,在系統啟動後開始啟動Launcher,進而才載入桌面資料。那麼如何實現開機進入預設Launcher,比如把自己寫的應用設定成開機預設啟動的桌面呢?帶著這個問題來分析Launcher是如何被選中併成為預設桌面應用而啟動的。 Sy
Android6.0 AMS 新程序中啟動Activity
看到同一個應用程式的Activity一般都是在同一個程序中啟動,事實上,Activity也可以像Service一樣在新的程序中啟動,這樣,一個應用程式就可以跨越好幾個程序了,本文就分析一下在新的程序中啟動Activity的方法和過程。 在Android系統中
Android6.0來電流程
先放出6.0的MT時序圖大家有個直觀感受,下面程式碼一步步進行分析 第一部分:RIL–>GSMPhone Call狀態變化 -> 發出來電通知(frameworks\opt\telephony) 1. framwork/opt/telephony/…/RIL.ja
深入理解Activity啟動流程(二)–Activity啟動相關類的類圖
b- ive ava ani affinity server 組織 詳細 pac 本文原創作者:Cloud Chou. 歡迎轉載,請註明出處和本文鏈接 本系列博客將詳細闡述Activity的啟動流程,這些博客基於Cm 10.1源碼研究。 在介紹Activity的詳細啟動流程
Android6.0系統啟動流程分析三:SystemServer程序
在上一篇部落格 Android6.0系統啟動流程分析二:zygote程序一文中,我們隊Zygote程序的有了一定的瞭解。我們知道Zygote程序會啟動SystemServer程序,但我們並沒有在上篇文章中分析SystemServer程序的相關內容。這篇部落格,我
Android6.0系統啟動流程分析一:init程序
到了Android6.0,Init程序使用c++來寫了,不過沒有關係,它和c寫的init沒有太大的區別。 Init程序的入口程式碼是:system\core\init\init.cpp main函式: int main(int argc, char*
從0移植uboot (二) _啟動流程分析
title tco ret 沒有 返回 ips css location config 來源:Linux社區 作者:xiaojiang1025 : http://www.linuxidc.com/Linux/2017-02/141019.htm 經過
android6.0系統Healthd分析及低電量自動關機流程
系統平臺:android6.0概述Healthd是android4.4之後提出來的一種中介模型,該模型向下監聽來自底層的電池事件,向上傳遞電池資料資訊給Framework層的BatteryService用以計算電池電量相關狀態資訊,BatteryServcie通過傳遞來的資料來計算電池電量顯示
Android6.0 Reset恢復出廠設定流程分析
點選Settings應用中的恢復出廠設定按鈕後流程分析:先使用grep命令搜尋"恢復出廠設定"字串,找到相應的佈局檔案: packages/apps/Settings/res/xml/privacy_settings.xml <PreferenceScree
[Android6.0][RK3399] Type-C 驅動流程分析
基本概念 USB 控制器 OHCI(Open Host Controller Interface) 是支援USB1.1的標準,但它不僅僅是針對USB,還支援其他的一些介面,比如它還支援Apple的火線(Firewire,IEEE 1394
[Android6.0][RK3399] 雙屏異顯程式碼實現流程分析(一)
Platform: RK3399 OS: Android 6.0 Version: v2016.08 本文分為兩部分。 《[RK3399] 雙屏異顯程式碼實現流程分析(一)》為分析 RK video 部分標準的程式碼(base on 2017.
[RK3288][Android6.0] 系統按鍵驅動流程分析
Rockchip的按鍵驅動位於 kernel/drivers/input/keyboard/rk_keys.c 預設支援的keys在dts中定義: 其中power key作為普通gpio,具有喚醒功能。而其他按鍵比如,volume up/down 可以通
android6.0 開機啟動流程
這篇部落格講下android開機啟動流程,init那部分之前在分析init程序的時候,講過了,我們就不看了。當然我們結合log看。 整個開機的時間,我們一SurfaceFlinger來算,先從如下log開始,下面這句log,是在SurfaceFlinger的建構函式的第一句
[Android6.0][RK3399] 電池系統(三)電量計 CW2015 驅動流程分析
Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2017.04 IC: TI BQ25700、RK808 已知問題 驅動分析 函式呼叫鏈 已知問題 cw2
Activity啟動流程,介面繪製到事件處理的整個流程(基於Android6.0原始碼)(2)
void setLayoutParams(WindowManager.LayoutParams attrs, boolean newView) { synchronized (this) { ...... mWindowAttributes
[Android6.0][RK3399] 雙屏異顯程式碼實現流程分析(二)
Platform: RK3399 OS: Android 6.0 Version: v2016.08 LCD interface: eDP + mipi Patch Code Date: Fri, 09 Dec 2016 10:53:11
android6.0原始碼分析之Activity啟動過程
Activity最為android開發者最熟悉的元件,由ActivityManagerService服務進行排程管理,而ActivityManagerService的啟動過程在activitymanagerservice服務原始碼分析一文中進行了詳細分析,本文基
Android6.0原始碼分析之menu鍵彈出popupwindow選單流程分析
例如上圖,在按下選單鍵後會彈出對應的選單選項,準確來說,是在選單鍵彈起後出現的一個popupwindow,那麼從選單鍵彈起到popupwindow建立所涉及到的歷程是怎樣的呢? 理論上是底層監測m