<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Mac OS X 下用 Eclipse 瀏覽和編譯 Android 源代碼

Mac OS X 下用 Eclipse 瀏覽和編譯 Android 源代碼

作者: 時(shí)間:2016-10-08 來(lái)源:網(wǎng)絡(luò ) 收藏

LEOPARD_SDK:= /Developer/SDKs/MacOSX10.6.sdk,即可通過(guò)編譯。

初始化編譯環(huán)境:

$source build/envsetup.sh

2)選擇編譯目標

$lunch full-eng

3)開(kāi)始編譯代碼

$make

如果運氣好的話(huà),你可以看到最終成功的提示,goodluck!

四.將源代碼導入Eclipse

1.拷貝.classpath

進(jìn)入gingerbread源代碼目錄,也就是上面的android_gingerbread_src。

$cd android_gingerbread_src

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

將.classpath設置為可寫(xiě)

$chmod +w .classpath

2.新建Eclipse工程

運行Eclipse,選擇File->New->Java Project,項目位置就選擇android_gingerbread_src根目錄,導入成功以后,Eclipse開(kāi)始編譯源代碼,不過(guò)會(huì )報告兩個(gè)錯誤,如下:

Project'gingerbread' is missing required library:'out/target/common/obj/JAVA_LIBRARIES/google-common_intermediates/javalib.jar'

Project'gingerbread' is missing required library:'out/target/common/obj/JAVA_LIBRARIES/gsf-client_intermediates/javalib.jar'

刪除.classpath中的這兩行路徑:

添加

然后重啟Eclipse,即可解決。

五.利用Eclipse調試gingerbread代碼

通過(guò)對gingerbread源代碼的調試,我們可以更為清晰的了解Android的內部工作機制,也可以省卻大量的閱讀代碼的時(shí)間,提高學(xué)習效率。

如果要想通過(guò)Eclipse來(lái)調試gingerbread代碼,我們必須首先能夠成功通過(guò)編譯,編譯以后,會(huì )生成幾個(gè)系統文件,其中包括system.img,userdata.img和ramdisk.img,三個(gè)文件位于源碼目錄下的out/target/product/generic子目錄下,如果熟悉Android系統開(kāi)發(fā)的朋友應該知道,一個(gè)完整的Android映像應該還包括一個(gè)叫kernel-qemu的文件,這就是Linux內核鏡像,不過(guò)我們并沒(méi)有編譯內核,所以這里沒(méi)有生成這個(gè)文件。

要想成功調試,我們還需要安裝androidsdk,網(wǎng)上此類(lèi)文章很多,這里就不多說(shuō)了。將上述三個(gè)文件拷貝到/path-androidsdk/platforms/android-10/images目錄下,替換該目錄下的三個(gè)同名文件(由于gingerbread代碼版本是2.3.3,這個(gè)版本對應的就是android—10,一定不要搞錯了)。

創(chuàng )建一個(gè)新的avd虛擬設備,Target選擇Android2.3.3,如圖,并啟動(dòng)模擬器。

我們可以看出,Android的版本是2.3.5,Build number是full-eng 2.3.5 GINGERBREAD eng,編譯時(shí)間是2011.10.15日。確實(shí)是我們自己編譯的鏡像。

啟動(dòng)Eclipse,選擇gingerbread源碼工程后,選擇Run->Debug Configurations,在左邊列表中選擇“Remote Java Application”,并創(chuàng )建一個(gè)新的項目gingerbread,將端口(Port)設置為8700,其它保持缺省,如圖所示:

在eclipse中,選擇DDMS視圖,并選中你要調試的進(jìn)程,如圖:

回到上面的Remote Java Application界面,點(diǎn)擊“Debug”按鈕來(lái)啟動(dòng)調試,此時(shí)再打開(kāi)DDMS視圖,可以看到我們要調試的進(jìn)程顯示一個(gè)綠色的小圖標:

你可以在eclipse中下斷點(diǎn)開(kāi)始調試了。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>