<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 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)選擇編譯目標(biāo)

          $lunch full-eng

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

          $make

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

          四.將源代碼導(dǎo)入Eclipse

          1.拷貝.classpath

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

          $cd android_gingerbread_src

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

          將.classpath設(shè)置為可寫

          $chmod +w .classpath

          2.新建Eclipse工程

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

          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調(diào)試gingerbread代碼

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

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

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

          創(chuàng)建一個(gè)新的avd虛擬設(shè)備,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è)新的項(xiàng)目gingerbread,將端口(Port)設(shè)置為8700,其它保持缺省,如圖所示:

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

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

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


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

          關(guān)鍵詞:

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();