編輯:Android開發教程
前言
Android Build 系統是 Android 源碼的一部分。關於如何獲取 Android 源碼,請參照 Android Source 官方網站:
http://source.android.com/source/downloading.html。
Android Build 系統用來編譯 Android 系統,Android SDK 以及相關文檔。該系統主要由 Make 文 件,Shell 腳本以及 Python 腳本組成,其中最主要的是 Make 文件。
眾所周知,Android 是一個開 源的操作系統。Android 的源碼中包含了大量的開源項目以及許多的模塊。不同產商的不同設備對於 Android 系統的定制都是不一樣的。
如何將這些項目和模塊的編譯統一管理起來,如何能夠在不同的 操作系統上進行編譯,如何在編譯時能夠支持面向不同的硬件設備,不同的編譯類型,且還要提供面向各個 產商的定制擴展,是非常有難度的。
但 Android Build 系統很好的解決了這些問題,這裡面有很多 值得我們開發人員學習的地方。
對於 Android 平台開發人員來說,本文可以幫助你熟悉你每天接觸 到的構建環境。
對於其他開發人員來說,本文可以作為一個 GNU Make 的使用案例,學習這些成功案 例,可以提升我們的開發經驗。
概述
Build 系統中最主要的處理邏輯都在 Make 文件中,而 其他的腳本文件只是起到一些輔助作用,由於篇幅所限,本文只探討 Make 文件中的內容。
整個 Build 系統中的 Make 文件可以分為三類:
第一類是 Build 系統核心文件,此類文件定義了整個 Build 系統的框架,而其他所有 Make 文件都是在這個框架的基礎上編寫出來的。
圖 1 是 Android 源碼樹的目錄結構,Build 系統核心文件全部位於 /build/core(本文所提到的所有路徑都是以 Android 源 碼樹作為背景的,“/”指的是源碼樹的根目錄,與文件系統無關)目錄下。
圖 1. Android 源碼樹 的目錄結構
在上一節中,菜單選項是沒有文字的。如果想要同時顯示圖標和文字,可以一起使用“|”和 MenuItem.SHOW_AS_ACTION_WITH_TE
在前面的例子中,我們忽略了一個重要的原則,在代碼和Layout中,直接使用了字符串常量,比如:<Button android:text=”Pattern
Android進程模型在安裝Android應用程序的時候,Android會為每個程序分配一個Linux用戶ID,並設置相應的權限,這樣其它應用程序就不能訪問此應用程序所擁
人人客戶端有一個特效還是挺吸引人的,在主界面手指向右滑動,就可以將菜單展示出來,而主界面會被 隱藏大部分,但是仍有左側的一小部分同菜單一起展示。據說人人客戶端的這個特效是
這裡我們使用類比的方法,將 PreferenceActivity 與一般