Android frameworks層啟動分析


由於本人對這部分知識的學習還不深入,但是願意拿出僅有的一點了解來分享,希望大家能給點好的建議。
眾所周知,Android平台是Java、C、C++等多種混合語言寫成的,我們在使用Android SDK提供的framework層的API來進行應用開發時通常調用的是java方法,而實際上這些java API很多時候只是一個入口,方法功能的真正實現是通過JNI調用到framework層的native方法來實現的。

Android在開機啟動后,經過一系列的加載流程,將進入frameworks/base/cmds/app_process/app_main.cpp。進而執行main()方法。

此處應該有掌聲.哈哈 應該有代碼的。但是放上來的方法不是很懂哎……

最終會調用frameworks/base./core/jni/AndroidRuntime.cpp的start方法。事實上,Android API與本地方法的注冊關聯就是在AndroidRuntime.cpp模塊里完成。編譯完成之后會在輸出目錄out的system/lib目錄下形成libandroid_runtime.so動態鏈接庫。

有空的時候再把這部分補上吧……


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com