国产成人精品三级麻豆,色综合天天综合高清网,亚洲精品夜夜夜,国产成人综合在线女婷五月99播放,色婷婷色综合激情国产日韩


Android SDK開(kāi)發(fā)環(huán)境搭建

           

    基于SDK進(jìn)行Android應(yīng)用的開(kāi)發(fā),首先需要進(jìn)行基于SDK的開(kāi)發(fā)環(huán)境的搭建。開(kāi)發(fā)者安裝Eclipse,然后下載相應(yīng)的Android SDK下載工具包和ADT插件,按照//developer.android.com上的安裝步驟進(jìn)行安裝。不過(guò),在Android 2.3中,對(duì)應(yīng)的ADT 8.0.0的文件布局發(fā)生了變化,導(dǎo)致ADT 8.0.0無(wú)法兼容Foryo及以下Android版本。

    需要注意的是,在通過(guò)AVD管理器下載SDK時(shí),由于默認(rèn)采用了HTTPS的鏈接方式訪問(wèn)Android的官方倉(cāng)庫(kù),在部分機(jī)器上可能會(huì)因安全原因拒絕鏈接。為了完成下載,需要在AVD管理器的設(shè)置選項(xiàng)中,選擇“Force https://... sources to be fetched using //”和“Ask before restarting ADB”。

    為了通過(guò)模擬器進(jìn)行開(kāi)發(fā)和調(diào)試,需要為目標(biāo)設(shè)備在開(kāi)發(fā)環(huán)境中創(chuàng)建相應(yīng)的虛擬設(shè)備。

    在Android中,虛擬設(shè)備稱做AVD(Android Virtual Device)。在早期的Android SDK中,開(kāi)發(fā)者需要基于命令行的方式來(lái)創(chuàng)建AVD,在新的Android SDK下載工具包中,已經(jīng)提供了圖形界面的方式,使開(kāi)發(fā)者可以根據(jù)需要方便地創(chuàng)建AVD,查看AVD相關(guān)的信息。本質(zhì)上這是通過(guò)“Android”工具來(lái)實(shí)現(xiàn)的。

    Android工具的命令行用法如下:
    android [global options] action [action options]
    可用的“action”包括:

    -list     //列出存在的目標(biāo)平臺(tái)和AVD
    -list avd     //列出存在的AVD
    -list target     //列出存在的目標(biāo)平臺(tái)
    -create avd     //創(chuàng)建新的AVD
    -move avd     //移動(dòng)或者重命名AVD
    -delete avd     //刪除存在的AVD
    -update avd     //更新存在的AVD到新的目標(biāo)平臺(tái)
    -create project     //創(chuàng)建新的Android工程
    -update project     //更新Android工程(必須有AndroidManifest.xml)
    -create test-project     //創(chuàng)建新的Android測(cè)試工程
    -update test-project     //更新Android測(cè)試工程(必須有AndroidManifest.xml)
    -update adb     //更新adb以支持USB設(shè)備
    -update sdk     //更新可用的SDK以進(jìn)行SDK安裝
    對(duì)于“create avd ”,其選項(xiàng)包括:
    -c – sdcard     //共享SD卡映像的路徑或AVD的新SD卡的大小
    -t –target     //新建AVD的目標(biāo)平臺(tái)的ID
    -n –name     //新建AVD的名字
    -p –path     //新建AVD的路徑
    -f –force     //強(qiáng)制創(chuàng)建AVD,如果已經(jīng)存在同名AVD,則進(jìn)行覆蓋
    -s –skin     //指定AVD采用的皮膚

    在Linux環(huán)境下的目標(biāo)平臺(tái)和AVD列表示例:

    Available Android targets:
    id: 1 or "android-8"
        Name: Android 2.2
        Type: Platform
        API level: 8
        Revision: 2
        Skins: HVGA (default), QVGA, WQVGA400, WQVGA432, WVGA800, WVGA854
    id: 2 or "android-9"
         Name: Android 2.3
         Type: Platform
         API level: 9
         Revision: 1
         Skins: HVGA (default), QVGA, WQVGA400, WQVGA432, WVGA800, WVGA854
    id: 3 or "Google Inc.:Google APIs:9"
         Name: Google APIs
         Type: Add-On
         Vendor: Google Inc.
         Revision: 1
         Description: Android + Google APIs
         Based on Android 2.3 (API level 9)
         Libraries:
         * com.google.android.maps (maps.jar)
              API for Google Maps
         Skins: HVGA (default), QVGA, WQVGA400, WQVGA432, WVGA800, WVGA854
    id: 4 or "Google Inc.:Google APIs:8"
         Name: Google APIs
         Type: Add-On
         Vendor: Google Inc.
         Revision: 2
         Description: Android + Google APIs
         Based on Android 2.2 (API level 8)
         Libraries:
         * com.google.android.maps (maps.jar)
             API for Google Maps
         Skins: HVGA (default), QVGA, WQVGA400, WQVGA432, WVGA800, WVGA854
         Available Android Virtual Devices:
             Name: my_android
             Path: /root/.android/avd/my_android.avd
         Target: Android 2.2 (API level 8)
             Skin: HVGA
             Sdcard: 200M

    顯示AVD設(shè)備列表的信息的操作方式為:
    #cd android-sdk-linux_86/tools
    #./android list

    基于AVD管理器的圖形界面,開(kāi)發(fā)者可以用比命令行更方便的方式來(lái)創(chuàng)建和維護(hù)AVD。創(chuàng)建Android虛擬設(shè)備my_android的命令行方法為:
        #cd android-sdk-linux_86/tools
        #./android create avd -n my_android -t 2    //創(chuàng)建基于Android 2.2的AVD

    除了“Android”工具外,在“android-sdk-linux_86/tools”下,Android還提供了ddms、emulator、layoutopt、traceview、dmtracedump、hierarchyviewer、zipalign、apkbuilder、draw9patch、hprof-conv、mksdcard、sqlite3等多種實(shí)用工具。

    另外在“android-sdk-linux_86/platforms/android-8/tools”下,Android還提供了aapt、aidl、dexdump、dx等工具。

    在Foryo以后,Android將部分早期放置在“android-sdk-linux_86/platforms/android-?/tools”下的工具放置到了android-sdk-linux_86/platform-tools中,這部分工具包括aapt、adb、aidl、dexdump、dx等。這似乎表明Google任務(wù)在Dalvik虛擬機(jī)的優(yōu)化上已經(jīng)比較成熟。不會(huì)再有大的變化。

    其中“emulator”提供了基于QEMU的模擬器,供開(kāi)發(fā)者進(jìn)行應(yīng)用的開(kāi)發(fā)、調(diào)試、測(cè)試。需要說(shuō)明的是,由于Android的模擬器是基于QEMU的,模擬了真實(shí)的ARM環(huán)境,所以Android的編譯與通常的嵌入式開(kāi)發(fā)不同,沒(méi)有所謂的“Home”端和“Target”端的概念。在默認(rèn)情況下,編譯輸出文件均是基于ARM體系結(jié)構(gòu)的(Android還提供了X86架構(gòu)的模擬器編譯),當(dāng)然Android模擬器尚不能完全模擬真實(shí)的物理設(shè)備,如支持的ARM指令目前僅限于ARMv5指令集,而不支持主流Cortex A8所需的ARMv7指令集,在LCD的顯示上,目前僅支持16bit,而不支持24bit,同樣觸控技術(shù)上,模擬器也不支持多點(diǎn)觸控。在啟動(dòng)emulator時(shí),需要指定相應(yīng)的AVD。

    “hierarchyviewer”為開(kāi)發(fā)者調(diào)試和優(yōu)化UI界面提供了幫助,可以幫助開(kāi)發(fā)者在像素級(jí)別調(diào)整UI布局。

    “l(fā)ayoutopt”可以幫助開(kāi)發(fā)者分析UI的布局,有助于開(kāi)發(fā)出更精細(xì)的UI。

    “draw9patch”通過(guò)WYSIWYG編輯器幫助開(kāi)發(fā)者進(jìn)行2D圖形的瀏覽和維護(hù)。在Android開(kāi)發(fā)者,主要用于制作可伸縮的*.9.png格式的圖片上。

    “ddms”幫助開(kāi)發(fā)者進(jìn)行應(yīng)用的調(diào)試,是開(kāi)發(fā)者常用的工具之一,也是Android重要的工具之一。

    “adb”幫助開(kāi)發(fā)者在模擬器或物理設(shè)備上安裝APK文件、向SD卡上推拉文件或者連接GDB調(diào)試器。也是開(kāi)發(fā)者常用的工具之一。

    “aapt”用來(lái)創(chuàng)建APK文件。開(kāi)發(fā)者一般不直接接觸。

    “aidl”為Android的進(jìn)程間通信創(chuàng)建接口代碼,是Android多進(jìn)程通信的重要基礎(chǔ)。開(kāi)發(fā)者一般不直接接觸。進(jìn)程通信的更多內(nèi)容可以參考3.2節(jié)過(guò)程調(diào)用。

    “sqlite3”幫助開(kāi)發(fā)者創(chuàng)建、查閱后綴為db的SQLite數(shù)據(jù)庫(kù)文件。需要注意的是,默認(rèn)情況下Android的SQLite數(shù)據(jù)庫(kù)文件沒(méi)有經(jīng)過(guò)加密處理,這在涉及敏感信息時(shí),是個(gè)比較大的風(fēng)險(xiǎn),好在相應(yīng)的加解密接口已經(jīng)存在,設(shè)備廠商只需要在底層加入選定的加密算法即可。另外,為了更方面的查閱SQLite數(shù)據(jù)庫(kù)文件,Linux下有個(gè)比較比較方面的工具即sqliteman。

    “traceview”為Android應(yīng)用運(yùn)行過(guò)程中產(chǎn)生的日志的圖形界面。在Android中,將日志分為調(diào)試(Debug)、錯(cuò)誤(Error)、信息(Info)、詳情(Verbose)、警告(Warning)等5個(gè)等級(jí),在實(shí)際的開(kāi)發(fā)中,可以根據(jù)實(shí)際情況選用不同的等級(jí),就個(gè)人經(jīng)驗(yàn)而言,應(yīng)慎用“Error”等級(jí),純調(diào)試用途應(yīng)用“Debug”等級(jí)。使用“Debug”等級(jí)日志的另一個(gè)好處在于,在發(fā)布時(shí)可以很方便地關(guān)閉日志輸出。

    “mksdcard”幫助開(kāi)發(fā)者創(chuàng)建SD卡的硬盤映像。其文件系統(tǒng)為FAT32,在通過(guò)圖形界面創(chuàng)建AVD時(shí),也可以同時(shí)創(chuàng)建SD卡, mksdcard的命令行參數(shù)如下:
        usage: mksdcard [-l label] < size> < file>

    “dx”重寫(xiě)了Android的DEX字節(jié)碼,這是Android性能的關(guān)鍵和設(shè)計(jì)精華。開(kāi)發(fā)者一般不直接接觸。

    “zipalign”為一個(gè)重要的APK優(yōu)化工具,在Donut中引入。提供了優(yōu)化后的應(yīng)用和系統(tǒng)的交互效率,從而使整個(gè)系統(tǒng)的運(yùn)行效率得到較大的提升。

    Android SDK的頻繁升級(jí),為廣大的開(kāi)發(fā)者造成了很多的困擾,為了更新基于舊Android SDK開(kāi)發(fā)的工程,基于命令行方式的方法為:
        #android-update project    //工程必須有AndroidManifest.xml文件

    精品課程推薦:Android應(yīng)用開(kāi)發(fā)培訓(xùn)班(FSAD1002)

    課程目標(biāo)
      1)使用Android SDK進(jìn)行移動(dòng)應(yīng)用開(kāi)發(fā)有全面深入的了解,掌握Android編程的基本模式;
      2)完成一個(gè)功能較全面的Android程序;
      3)理解Android編程的關(guān)鍵技術(shù),能夠自己進(jìn)行更加深入的學(xué)習(xí);
      4)初步具有Android編程的實(shí)力,能夠在文檔輔助下完成企業(yè)要求的應(yīng)用開(kāi)發(fā)。

   熱點(diǎn)鏈接:

   1、嵌入式linux入門要學(xué)什么
   2、2013移動(dòng)互聯(lián)網(wǎng)發(fā)展趨勢(shì)TOP10
   3、2012移動(dòng)互聯(lián)網(wǎng)熱點(diǎn)事件終極大盤點(diǎn)
   4、2013華清遠(yuǎn)見(jiàn)嵌入式系統(tǒng)師資培訓(xùn)(寒假)
   5、嵌入式Linux開(kāi)發(fā)學(xué)習(xí)

更多新聞>>