Mac下下載android4.2源碼,進行源碼調試


星期天在家研究了一下如何在mac下下載android4.2的源碼並通過eclipse進行源碼級別調試來更清晰的研究一下android的運行原理,具體步驟如下:

最后下下來了,但是我進行編譯卻沒有通過,可能是我有東西沒安,但是不影響源碼調試,

首先參考http://source.android.com/source/downloading.html,與http://blog.csdn.net/joshua_yu/article/details/6876978,感謝。

說一下我最后的方法,

一、前期准備

1、mac下我們需要創建一個大小寫敏感的磁盤鏡像文件,並將其掛載,進入應用程序/實用工具/磁盤工具,選擇文件->新建->新建空白映像:

  

  空間大小自定義,建議30G,格式Mac os拓展(區分大小寫),映像格式選擇稀疏磁盤映像

2、安裝xcode,編譯時用到。

3、從macports.org安裝MacPorts

  macports基本命令:

  (1)sudo port install ?安裝

  (2)sudo port uninstall ?卸載

  (3) port installed 查看已安裝的軟件

  這三個就夠用了這里

4. 執行sudo port install gmake libsdl git-core gnupg命令安裝gmake,libsdl,git,gnupg。我這里直接安裝了gmake3.8.2,網上有說有問題家,但是我安     裝后沒有編譯源碼所以未發現問題。如果編譯的可以安裝網上方法退回到3.8.1。

5、安裝完成之后port installed看一下時候上面提到的都安裝了,接着如下:

  修改文件標識符限制:
  由於MacOS默認將同時打開的文件標識符數量限制得太小,並行編譯處理時可能會超出這個限制。所以在 ~/.profile里加上這么一段:

  #set the number of open files to be 1024

  ulimit -S -n 1024

二、從https://android.googlesource.com 下載源碼,

  1.創建~/bin/目錄

    $mkdir ~/bin

    $PATH=~/bin:$PATH

  2.安裝repo

    curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo

  3.設置repo可執行權限

    $chmoda +x ~/bin/repo

  4、這一步大家注意了,當創建的大小寫敏感磁盤空間掛載后我們的/volumes下能夠看到android的目錄,從這步起所有的操作在次目錄下完成,

    接下來執行repoinit  

    $ repo init -u https://android.googlesource.com/platform/manifest -b android-4.2_r1

    執行完成后ls -a查看是否一個.repo文件夾,進入看到有manifest.xml文件,如果有那么我們接下來就可以下載源碼了。

    此連接有所有的版本branch,https://android.googlesource.com/platform/external/blktrace/想下載哪個版本的更改后-b后面即可。

  5、下載源碼

    在/Volumes/android目錄下執行命令:repo sync

  剩下的就是等待了,我的網速比較快,下了二十多分鍾就下完了,如果慢的兩天也有可能。

三、把編譯的方法說一下,需要的可以跟着試一下

  進入到掛載的android目錄下,

  1、初始化編譯環境:

    $source build/envsetup.sh

  2、選擇編譯目標

    $lunch full-eng

  3、開始編譯代碼

    $make -j4(表明我們開啟四個線程來進行編譯)。

  等着結果吧,我的沒編譯成功,但是我沒想編譯,只為了調試源碼。

四、調試源碼方法

  1、拷貝.classpath

  進入源代碼目錄,也就是上面的android。

    $cd /Volumes/android

    $cp ./development/ide/eclipse/.classpath ./

  將.classpath設置為可寫

    $chmod +w .classpath

  2、首先eclipse安裝adt和sdk,這個不說了,肯定都會,版本選擇4.2,安裝完成后,file-java project,起個名字,然后location選擇android目錄,等待,可以  看到源碼都被加載,然后看一下報的錯誤,我的報了如下錯誤:

  

  調試時我發現沒影響,所以不去關心了。

  3、創建andoird項目(可以是hello world),選擇android項目右鍵debug as-debug Configurations,然后選擇左下角家remote java application右鍵new,設置,效果:

     

  設置完成后apply保存。

  4、然后在onCreate或其他地方設置斷點,進入調試界面后如下:

    如果看到下圖,那么我們成功了一半了:

   

  點擊yes,進入,下面我們看到的界面發現沒有源碼,我們點擊edit source lookup Path,點擊Add按鈕,選擇java project,然后選中我們導入家源碼工程,確定,然后再次查看,結果如下圖:

    

    接下來我們調試源碼,點擊左上角debug窗口中的你想調試家部分,可以點擊Looper().loop,我們進入看一下:

  

  好了,看到我們的源碼了,剩下的是去探索了。Y(^_^)Y。

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM