標籤:
第一章
Android系統本身是一個龐大的系統,移植並不需要精通Android的每一個部分,需要考慮的是Android系統的硬體抽象層(HAL)和Linux中的相關裝置驅動程式。
Android系統的移植工作的目的是為了在特定的硬體上運行Android系統。在移植的過程中,把握關鍵要點,減少工作量是一個重要的方面。從工作的角度,通常的方法為,首先要熟悉硬體抽象層的介面,其次要整合和複用已有的驅動程式,主要的工作量在硬體抽象層的實現中。為了更好地理解和調試系統,也應該適當地瞭解上層對硬體抽象層的調用情況。
移植方面主要的工作有兩個部分:
Linux驅動
Android系統硬體抽象層
Linux中的驅動工作在核心空間,Android系統硬體抽象層工作在使用者空間,有了這兩個部分的結合,就可以讓龐大的Android系統運行在特定的硬體平台上。
在具有了特定的硬體系統之後,通常在Linux中需要實現其驅動程式,這些驅動程式通常是Linux的標準驅動程式,在Android平台和其他Linux平台基本上是相同的。主要的實現方面是Android系統中的硬體抽象層(Hardware Abstract Layer),硬體抽象層對下調用Linux中的驅動程式,對上提供介面,以供Android系統的其他部分(通常為Android本地架構層)調用。
第二章
分為五個步驟來完成Android開發環境的部署:
1、安裝JDK:
JDK的全稱是Java SE Development Kit,也就是Java 開發工具箱。SE表示標準版。JDK是Java的核心,包含了Java的運行環境(Java Runtime Environment),一堆Java工具和給開發人員開發應用程式時調用的Java類庫。
JDK包含的基本工具主要有:
javac:Java編譯器,將原始碼轉成位元組碼。
jar:打包工具,將相關的類檔案打包成一個檔案。
javadoc:文檔產生器,從源碼注釋中提取文檔。
jdb:debugger,調試查錯工具。
java:運行編譯後的java程式。
2、配置Windows上JDK的變數環境 :
當要求系統啟動一個應用程式時,系統會先在目前的目錄下尋找,如果沒有則在系統變數Path指定的路徑去尋找。前面我們說了JDK包含了一堆開發工具,這些開發工具都在JDK的安裝目錄下,為了方便使用這些開發工具,我們有必要把JDK的安裝目錄設定了系統變數。這就是為什麼在Windows安裝了JDK後需要設定JDK的bin目錄為系統內容變數的原因。
3、下載安裝Eclipse :
Eclipse為Java應用程式及Android開發的IDE(整合式開發環境)。Eclipse不需要安裝,下載後把解壓包解壓後,剪下eclipse檔案夾到你想安裝的地方,開啟時設定你的工作目錄即可。
4、下載安裝Android SDK :
配置了JDK變數環境,安裝好了Eclipse,這個時候如果只是開發普通的JAVA應用程式,那麼Java的開發環境已經準備好了。我們要通過Eclipse來開發Android應用程式,那麼我們需要下載Android SDK(Software Development Kit)和在Eclipse安裝ADT外掛程式,這個外掛程式能讓Eclipse和Android SDK關聯起來。
5、為Eclipse安裝ADT外掛程式:
為了使得Android應用的建立,運行和調試更加方便快捷,Android的Team Dev專門針對Eclipse IDE定製了一個外掛程式:Android Development Tools(ADT)。
第三章
Git是目前世界上最先進的分布式版本控制系統。
版本庫又名倉庫,英文名repository,可以簡單的理解一個目錄,這個目錄裡面的所有檔案都可以被Git管理起來,每個檔案的修改,刪除,Git都能跟蹤,以便任何時刻都可以追蹤曆史,或者在將來某個時刻還可以將檔案”還原”。
工作區:就是你在電腦上看到的目錄,比如目錄下testgit裡的檔案(.git隱藏目錄版本庫除外)。或者以後需要再建立的目錄檔案等等都屬於工作區範疇。
版本庫:工作區有一個隱藏目錄.git,這個不屬於工作區,這是版本庫。其中版本庫裡面存了很多東西,其中最重要的就是stage(暫存區),還有Git為我們自動建立了第一個分支master,以及指向master的一個指標HEAD。
使用Git提交檔案到版本庫有兩步:
第一步:是使用 git add 把檔案添加進去,實際上就是把檔案添加到暫存區。
第二步:使用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支上。
建立與合并分支命令如下:
查看分支:git branch
建立分支:git branch name
切換分支:git checkout name
建立+切換分支:git checkout –b name
合并某分支到當前分支:git merge name
刪除分支:git branch –d name
第四章
Ubuntu 環境下載 Android 代碼
Git 和 Repo 的安裝
首先確保在目前使用者的主目錄下建立一個 /bin 目錄(如果沒有的話),然後把它 (~/bin) 加到 PATH 環境變數中。
安裝git
sudo apt-get install git-core curl
這條命令會從互連網的軟體倉庫中安裝 git-core 和 curl
初始化版本庫 如果是想把 Android 當前主線上最新版本的所有的 sourcecode 拿下來,我們需要 repo 的協助。
先建立一個目錄,比如 ~/myandroid ,進去以後用 repo init 命令即可。
repo init -u git://android.git.kernel.org/platform/manifest.git
同步版本庫 使用 repo sync 命令,把整個 Android 代碼樹做同步到本地,同樣,可以用類似 repo sync project1 project2 … 這樣的命令來同步某幾個項目 如果是同步 Android 中的單個項目,只要在項目目錄下執行簡單的 git pull 即可。
source 命令( 從 C Shell 而來) 是bash shell 的內建命令。點命令,就是個點符號,( 從Bourne Shell 而來) 是source 的另一名稱。同樣的,當前指令碼中配置的變數也將作為指令碼的環境,source( 或點) 命令通常用於重新執行剛修改的初始化文檔,如.bash_profile 和 .profile 等等。
android深度探索1-4章心得體會