谷歌工程師詳解Android系統架構

2021-06-05 09:43:00 字數 940 閱讀 6759

首先,就像android開源和相容性技術負責人dan morrill在android開發手冊相容性部分所解釋的,「android並不是傳統的linux風格的乙個規範或分發版本,也不是一系列可重用的元件整合,android是乙個用於連線裝置的軟體塊。」

andriod是什麼?

linux

所有東西的底層是乙個穩定的保持更新的linux核心(我現在用的nexus手機所用的就是2.6.32版的核心),以及我們精心打造的能源管理元件;當然還有將它們整合至上層linux**的擴充套件和公共元件。

dalvik

android另乙個重要的部分,包括虛擬機器和一組重要的執行環境。它的設計非常巧妙,是個很好的乙個手機終端的底層應用。

**如何生成?

dalvik虛擬機器只執行.dex的可執行檔案。當j**a程式通過編譯,最後還需要通過sdk中的工具轉化成.dex格式才能在虛擬機器上執行。

我需要強調的是,android應用本身就可視作可在平台上執行並呼叫apis的**,所以對**如何生成不需特別看重。

開源那些事

在下面的圖中,綠色的大部分元件是基於apache許可證開源,其餘基於gpl、lgpl和bsd。

開源的android

android框架

在android開發者網(developer.android.com)上已有不少篇幅來幫助你使用它,在此就不再累述。

android框架

標準庫

在這裡「標準」是指「開發者在開源環境中一般可以使用的」。

其他

大多數應用是基於dalvik的,我指的是除了遊戲之外的應用。遊戲開發者通常希望用c/c++來編寫,排斥使用虛擬機器,所以他們可以通過andriod ndk來開發。

目標Android高階工程師

現在你是初級工程師,但是你想當個高階工程師,所以,你就要給自己定個目標,即 我是要成為高階工程師的男人。有了這個定位,並且努力朝著這個目標去努力,然後內心深處就會有乙個感覺,這個感覺就會成為你的b格,也就是說,雖然我現在是小菜,但是我不是一般的小菜,從而內心有一種自豪感,而這種自豪感會給你提供正能量...

Android工程師 GitHub的使用

使用github 一 註冊 二 建立新倉庫 1 倉庫名稱不允許使用中文,只允許使用字母 數字 點 下劃線和中劃線。2 選擇使用readme檔案初始化專案。三 安裝git 2 安裝時只需注意選擇 use git bash only 其他都是 下一步 3 在所有程式中找到git bash並執行。四 使用...

網易 資深Android開發工程師

網易杭州研究院是網易集團設立的唯一的研究院機構,承擔網易集團先進技術研究的職責,為集團業務提供技術領先的技術支撐平台,同時負責以技術為核心的商業化業務的開拓。主要職責如下 1.負責網易易測的安卓底層技術研究與攻關 2.負責網易易測相關功能的設計 開發與優化。職位要求 1.三年以上安卓開發經驗 2.熟...