IT培训机构|91免费精品视频|专注编程培训|91免费精品|软件开发培训_91免费国产视频_华清远见教育


Android SDK開發環境搭建

           

    基于SDK進行Android應用的開發,首先需要進行基于SDK的開發環境的搭建。開發者安裝Eclipse,然后下載相應的Android SDK下載工具包和ADT插件,按照//developer.android.com上的安裝步驟進行安裝。不過,在Android 2.3中,對應的ADT 8.0.0的文件布局發生了變化,導致ADT 8.0.0無法兼容Foryo及以下Android版本。

    需要注意的是,在通過AVD管理器下載SDK時,由于默認采用了HTTPS的鏈接方式訪問Android的官方倉庫,在部分機器上可能會因安全原因拒絕鏈接。為了完成下載,需要在AVD管理器的設置選項中,選擇“Force https://... sources to be fetched using //”和“Ask before restarting ADB”。

    為了通過模擬器進行開發和調試,需要為目標設備在開發環境中創建相應的虛擬設備。

    在Android中,虛擬設備稱做AVD(Android Virtual Device)。在早期的Android SDK中,開發者需要基于命令行的方式來創建AVD,在新的Android SDK下載工具包中,已經提供了圖形界面的方式,使開發者可以根據需要方便地創建AVD,查看AVD相關的信息。本質上這是通過“Android”工具來實現的。

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

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

    在Linux環境下的目標平臺和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設備列表的信息的操作方式為:
    #cd android-sdk-linux_86/tools
    #./android list

    基于AVD管理器的圖形界面,開發者可以用比命令行更方便的方式來創建和維護AVD。創建Android虛擬設備my_android的命令行方法為:
        #cd android-sdk-linux_86/tools
        #./android create avd -n my_android -t 2    //創建基于Android 2.2的AVD

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

    另外在“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任務在Dalvik虛擬機的優化上已經比較成熟。不會再有大的變化。

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

    “hierarchyviewer”為開發者調試和優化UI界面提供了幫助,可以幫助開發者在像素級別調整UI布局。

    “layoutopt”可以幫助開發者分析UI的布局,有助于開發出更精細的UI。

    “draw9patch”通過WYSIWYG編輯器幫助開發者進行2D圖形的瀏覽和維護。在Android開發者,主要用于制作可伸縮的*.9.png格式的圖片上。

    “ddms”幫助開發者進行應用的調試,是開發者常用的工具之一,也是Android重要的工具之一。

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

    “aapt”用來創建APK文件。開發者一般不直接接觸。

    “aidl”為Android的進程間通信創建接口代碼,是Android多進程通信的重要基礎。開發者一般不直接接觸。進程通信的更多內容可以參考3.2節過程調用。

    “sqlite3”幫助開發者創建、查閱后綴為db的SQLite數據庫文件。需要注意的是,默認情況下Android的SQLite數據庫文件沒有經過加密處理,這在涉及敏感信息時,是個比較大的風險,好在相應的加解密接口已經存在,設備廠商只需要在底層加入選定的加密算法即可。另外,為了更方面的查閱SQLite數據庫文件,Linux下有個比較比較方面的工具即sqliteman。

    “traceview”為Android應用運行過程中產生的日志的圖形界面。在Android中,將日志分為調試(Debug)、錯誤(Error)、信息(Info)、詳情(Verbose)、警告(Warning)等5個等級,在實際的開發中,可以根據實際情況選用不同的等級,就個人經驗而言,應慎用“Error”等級,純調試用途應用“Debug”等級。使用“Debug”等級日志的另一個好處在于,在發布時可以很方便地關閉日志輸出。

    “mksdcard”幫助開發者創建SD卡的硬盤映像。其文件系統為FAT32,在通過圖形界面創建AVD時,也可以同時創建SD卡, mksdcard的命令行參數如下:
        usage: mksdcard [-l label] < size> < file>

    “dx”重寫了Android的DEX字節碼,這是Android性能的關鍵和設計精華。開發者一般不直接接觸。

    “zipalign”為一個重要的APK優化工具,在Donut中引入。提供了優化后的應用和系統的交互效率,從而使整個系統的運行效率得到較大的提升。

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

    精品課程推薦:Android應用開發培訓班(FSAD1002)

    課程目標
      1)使用Android SDK進行移動應用開發有全面深入的了解,掌握Android編程的基本模式;
      2)完成一個功能較全面的Android程序;
      3)理解Android編程的關鍵技術,能夠自己進行更加深入的學習;
      4)初步具有Android編程的實力,能夠在文檔輔助下完成企業要求的應用開發。

   熱點鏈接:

   1、嵌入式linux入門要學什么
   2、2013移動互聯網發展趨勢TOP10
   3、2012移動互聯網熱點事件終極大盤點
   4、2013華清遠見嵌入式系統師資培訓(寒假)
   5、嵌入式Linux開發學習

更多新聞>> 

主站蜘蛛池模板: 升降炉|推板炉|创卓炉业 | 苏子富春品牌馆 抚顺市富春农业科技开发有限公司 抚顺特色农产品 抚顺市特色馆 | 浙江微龙科技-微通道工艺结合设备一站式解决方案-致力于连续流技术开发与产业化应用-助力传统医药化工行业转型升级 | 台车炉厂家_台车式退火炉_台车式回火炉—安徽大新工业炉有限公司 | 气体泄漏检测仪,COD水质分析仪,RD8200管线探测仪-成都恒通兴业科技有限责任公司 | 久久91精品久久91综合_国产亚洲自拍一区_国产精品第1页_亚洲高清视频一区_91成人午夜在线精品_亚洲国产精品网站在线播放_亚洲国产成人久久综合区_国产精品亚洲专区在线观看_免费视频精品一区二区三区 | 注塑机螺杆_光学无卤耐磨耐腐蚀螺杆_合金材料_螺杆研磨抛光机_杰宇螺杆 | 冷库出租_食品/医药冷库租赁_冷库改建/定制-北京亚冷 | 思为网络_成都百度优化快照排名-成都网站建设优化_成都网页设计_成都SEO公司 | 厦门电脑维修_上门维修电脑_笔记本电脑维修_办公设备维修 - 耐诚 | 机锋网-畅享科技品质生活,尽在机锋网| 萍乡市信源电瓷制造有限公司--官网|萍乡市信源电瓷|萍乡电瓷厂|萍乡绝缘子-萍乡市信源电瓷制造有限公司 | 芜湖液压配件-液压过滤器滤芯-水过滤器-芜湖新俊液压设备有限公司 | 无锡亮鑫不锈钢有限公司-不锈钢炉胆,马弗炉胆,耐高温炉胆,310s炉胆,网带炉 | 清洁度检测_手动颗粒萃取设备_自动颗粒萃取设备 - 厦门迈纳光学技术有限公司 | 腻子粉厂家_耐水腻子粉_内墙腻子粉批发_生态腻子粉_长沙美恩生态腻子粉厂家 | 合肥年会策划-合肥开业庆典公司-合肥会务活动礼仪公司-合肥展台搭建/音响租赁公司 [七色海] | 河北瑞峰医疗-河北护理床-河北医用病床-河北养老院护理床-河北护理床厂家-河北病床厂家-河北瑞峰医疗 | 装盒机|全自动封盒机|纸盒子包装机|高速装盒机定制-温州胜泰机械有限公司 | 阻抗分析仪 阻抗测试仪 介电常数测试仪 充电枪测试仪-苏州腾斯凯电子科技有限公司 | 黑料网 - 黑料大事记-黑料门 黑料社最新 今日黑料 热门黑料 最新反差免费-黑料网今日黑料首页_黑料网 - 黑料大事记-黑料门 黑料社最新 今日黑料 热门黑料 最新反差免费-黑料网今日黑料首页 | 围挡厂家_施工围挡_PVC围挡_建筑工程围挡_深圳市旭东钢构技术开发有限公司【官网】 | 萍乡市宏运特种陶瓷有限公司| 内衬不锈钢复合管,大口径内衬不锈钢复合钢管,双金属复合管,内衬不锈钢复合管厂家-江苏新澎 | 提供技术支持-TXC晶振-晶振厂家-32.768K,石英晶体振荡器厂家销售-NDK振荡器正规代理商 | 清研集团 - 北京清研灵智科技有限公司 | 万向轴承_福来轮_全向轮_双向转轮_万向球_算盘轮_塑料卷轴-宁津县正彤机械塑料有限公司 | 江苏科星新材料有限公司 - 南通科星化工股份有限公司 - 南通星奇新材料有限公司 | 全自动码垛机|码垛机器人|高位码垛机械手|拆垛机|缠绕机|山东腾阳智能装备有限公司 | 山东飞斯特汽车科技有限公司 | 中华石油化工网 www.cnpec.net——歌颂石化 服务石化 奉献石化 发展石化 | 长沙联合产权交易所有限公司 | 名片印刷,名片制作,名片设计,印刷彩色名片,数码快印名片-北京瑞思凯信息咨询公司 | 萍乡市德一防水工程有限公司| 上海慧泰仪器制造有限公司| 水宜生-水宜生水杯价格-水宜生保温杯-【水宜生水杯官网】 | 数控钢筋弯箍机_数控钢筋弯曲中心_数控钢筋笼滚焊机厂家_山东佳信 | 消防水电施工,消防水电安装,消防水电施工公司,消防水电改造-亿杰北京消防工程公司 | 桥梁支座更换_桥梁检测车租赁_高空作业车出租_支座更换_伸缩缝安装_隧道防水_养护加固_维修_出租_衡水庆兴桥梁养护工程有限公司 桥梁养护|桥梁维修加固|隧道裂缝修补|支座更换|管道堵水气囊|衡水众拓路桥养护有限公司 | 西门子伺服电机维修_西门子变频器维修_西门子伺服驱动器维修_数控系统维修_PL维修-上海仰光电子 西克制冷官网│制冷机组冷风机冷库设备厂家-西克制冷(无锡)有限公司_西克制冷(无锡)有限公司 | 济宁山银煤矿机械有限公司,钻采工具,防爆电器,凿岩机械,风动工具,矿山机械,建筑机械,支护设备,通风防尘,铁路设备,仪器仪表,大型设备,矿用泵,钎具类,消防类,矿车类,配件区类 |