Android學習啟動篇--eclipse如何調試system_server

來源:互聯網
上載者:User

標籤:android   ubuntu   eclipse   genymotion   

打算開始Android系統學習,君預善其事,必先利其器。如果能夠在eclipse中調試system_server, 對於理解Android系統服務能夠起到很大的協助.


在網上查了點資料,基本上都比較麻煩:

以下是老羅的文章, 有點老, 需要自己編譯一個android rom. 光下源碼就要準備好久!

http://blog.csdn.net/luoshengyang/article/details/6559955

還有一種是直接燒錄rom到Nexus真機上,這個有好處就是真機上比較快! 但是也很麻煩,除去下源碼, 解決各種編譯問題外,還需要買個Nexus.

http://www.360doc.com/content/14/0604/23/17754428_383723001.shtml


自己琢磨出來一種方案, 使用virtualbox+genymotion+eclipse, 比真機還快,而且不需要編譯android源碼.

以下使用Ubuntu14.04 LTS環境,用eclipse調試system_server源碼, 當然既然是eclipse, 只能調試到Java層.

1, 下載安裝virtual box, 這個網上有好多文章.

2. 下載安裝GenyMotion, 這個是好東西, 可以產生Android rom並能夠讓eclipse通過網口連上virtual box 虛擬機器, https://cloud.genymotion.com/page/launchpad/download/

3. 下載Android4.1.1的Rom, http://mirror1.jarfil.net/androvm.org/Download/, 

手機版androVM_vbox86p_4.1.1_r6.1-20130222.ova
Tablet版本androVM_vbox86tp_4.1.1_r6.1-20130222.ova 
4. 在virtual box中安裝android rom, 記得配置網路為橋接網卡, 選擇wlan0或者eth0. eclipse就靠它來把adb連上虛擬機器.
5. 啟動Android, 然後找到android VM configuration應用, 一般在homepage, 不然就在應用程式列表裡面.

6. 開啟,找到ip地址,如果找不到,那就返回步驟4改動下介面eth0或者wlan0。

7. 開啟終端, 敲入命令: adb connect <ip>.

8. 去grepcode下載android 4.1.1源碼.
http://grepcode.com/snapshot/repository.grepcode.com/java/ext/com.google.android/android/4.1.1_r1/
9. 開啟eclipse,建立一個java project, 請注意是個java project, 然後將下載的android-4.1.1_r1-sources.jar檔案匯入工程中.
10. 在DDMS中選中system_server進程, 切換到package explorer, 右鍵選擇java 工程,debug as--> debug configurations-->雙擊
remote java Application, 填寫host: local host, port: 8700,debug。
11. 好了,大功告成,你應該可以在ddms中看到system_server的debug小蟲子變成綠色的了,有木有!自己寫點apk吧,比如在應用中調用startActivity(),然後在ActivityManagerService.java中的StartActivity()函數中設定斷點,就可以開始Android之旅了。
12. 斷點被trigger到時,eclipse會找不到source, 在debug視窗選中你要debug的frame, 然後edit source lookup-->project-->選中你的project。就可以看到source了。

Android學習啟動篇--eclipse如何調試system_server

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.