Android面試收集(待續...)
一、android系統架構圖:
這個就是我們Android的整體系統架構圖了,我們首先從整體上來看看Android的體系結構。
Linux Kernel:我們知道Android其實就是一個作業系統,其底層是基於Linux Kernel的,這一層主要完成的是作業系統所具有的功能,比如這一層有許多的驅動程式,正是通過這些驅動程式來驅動我們裝置上的硬體裝置的。
Android Runtime:Android的執行環境,我們學過java的都知道,java程式的執行需要java的核心包的支援,然後通過JVM虛擬機器來執行我們的應用程式,這裡Android Runtime裡的Core Libraries就相當於java的JDK,是執行android應用程式所需要的核心庫,Dalvik Virtual Machine就相當於JVM,這時Google專為Android開發的執行android應用程式所需的虛擬機器。(5.0系統後改為ART執行環境)
Liberaries:這裡面都是Android的庫檔案,例如我們訪問SQLite資料庫的庫檔案等等。
Application Framework:應用程式的框架,這個是非常的重要的,相信Framework這個詞大家都應該非常的熟悉了,我們學習Android也主要學的就是這一層,我們通過這些各種各樣的框架來實現我們的Application。
Application:這個就是我們開發的Application了。
二、Android的四種常用元件
我們現在推崇的軟體開發就是基於元件來開發的,元件就類似於電腦的硬體一樣,我如果要組裝一臺電腦,可以直接通過購買各個硬體然後將其組裝在一起,對於軟體來說,元件就類似於這個,我們開發一個軟體,可以直接將這些元件組合在一起就行了。
Android一共有四種常用的元件:
Activity、Service、ContentProvider、BroadcastReceiver
Activity:Activity就是我們應用程式的介面,主要用來跟我們的使用者進行互動的,比如一個文字框,按鈕這些就是顯示在Activity上的,並且可以接收資料,傳遞資料到後臺,然後再顯示出來。
Service:Service我們是看不見的,對於絕大部分的資料的處理,業務的處理都是通過Service來完成的。
ContentProvider:ContentProvider類似於我們的檔案館,裡面存放了我們的各種資料,例如通訊錄中的資訊等,這個元件就是執行程式對其進行訪問,然後得到裡面的資料。
BroadcastReceiver:BroadcastReceiver元件是廣播接收器,主要是用來監聽系統的各個行為的,例如當電量不足的時候會給我們傳送一條廣播資訊。
/*create by 2018/11/17 */