<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-1  評論-68  文章-98  trackbacks-0
    0/ 準備工作 (生成mm等命令,具體參考: ~/mydonut/build/envsetup.sh)
    $ cd mydonut
    $ sh . build/envsetup.sh

    1/ 編譯項目 (Package: out/...,鏡像文件路徑:~/mydonut/out/target/product/generic)
    $ make

    2/ 創建SDK (Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>-x86.zip)
    $ make sdk

    3/ 創建ADT (Package ADT: ~/mysdk/android-eclipse-<buildnumber>.zip)
    $ development/tools/eclipse/scripts/build_server.sh ~/mysdk $USER

    4/ 編譯模塊 (訪問模塊對應的目錄,執行mm命令,Package: ~/mydonut/out/target/product/generic/system/{model-name}/{submodel-name}.**)
    $ cd frameworks/
    $ mm

    該system目錄對應的就是設備/模擬器運行環境對應的system目錄,我們講新生成的模塊文件(*.so/*.jar/*.apk/...)上傳到運行環境下的對應目錄后,重啟設備生效
    如果是應用程序(*.apk),除了Launcher應用需要重啟,其他應用均不需要重啟設備。

    下面以更新framework為例,Package: ~/mydonut/out/target/product/generic/system/framework/framework.jar

    4.1 修改framwork程序(~mydonut/framework/...),并訪問framework目錄,執行mm命令,編譯新的framework.jar程序
    $ cd framework
    $ mm

    其他模塊,如庫文件和應用程序也可以用同樣的方法編譯;應用程序還可以通過eclipse創建android 應用程序安裝包。

    4.2 首先我們運行模擬器(如果是手機,則通過USB連上終端)
    $ cd {ANDROID SDK}/tools
    $ ./emulator -avd {AVD_NAME}

    4.3 然后通過shell命令,設置設備/system目錄的寫權限
    $ ./adb shell
    # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
    # cd /system/bin
    # cat sh > su
    # chmod 4755 su
    # exit

    4.4 上傳framework.jar到對應的運行環境目錄
    $ ./adb push {MYDONUT_OUT_PATH}/target/product/generic/system/framework/framework.jar /system/framework

    4.5 通過命令,重啟設備,更新生效。
    $ ./adb shell
    # stop
    # start

    注意:如果要關掉模擬窗口后生效,需要通過make命令,編譯最后一次編譯后的改動,生成新的img鏡像文件,并更新到SDK,或生成新的SDK。

    附1:命令注解
    Invoke ". build/envsetup.sh" from your shell to add the following functions to your environment:
    - croot:   Changes directory to the top of the tree.
    - m:       Makes from the top of the tree.
    - mm:      Builds all of the modules in the current directory.
    - mmm:     Builds all of the modules in the supplied directories.
    - cgrep:   Greps on all local C/C++ files.
    - jgrep:   Greps on all local Java files.
    - resgrep: Greps on all local res/*.xml files.
    - godir:   Go to the directory containing a file.

    附2:參考文檔
    ~/mydonut/development/docs/howto_SDK_git_cygwin.txt
    ~/mydonut/development/docs/howto_build_SDK.txt
    ~/mydonut/development/docs/howto_use_cupcake_sdk.txt

    附3:輸出目錄
    ~/mydonut/out/target/common/obj/JAVA_LIBRARIES
    .jar程序包的完整輸出目錄,含有SDK中標志為@hide的程序和接口,應用程序中需要這些借口可以引入相關的.jar程序。

    ~/mydonut/out/host/linux-x86/bin
    存放相關的工具tools目錄

    附4:創建完整的java項目
    $ cp ./development/ide/eclipse/.classpath .
    打開Eclipse,新增一個已經創建的java項目,執行mydonut目錄,點擊finish,完成項目的創建,可以查看項目下所有的java程序。
    posted on 2009-09-25 18:57 Xu Jianxiang 閱讀(2356) 評論(0)  編輯  收藏 所屬分類: Android
    主站蜘蛛池模板: 最近中文字幕免费2019| 精品在线免费观看| 亚洲人成色在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 天天干在线免费视频| 国产成人免费ā片在线观看 | 亚洲人色婷婷成人网站在线观看 | 亚洲欧洲春色校园另类小说| 久久精品国产亚洲AV| 热99RE久久精品这里都是精品免费| 最近中文字幕mv免费高清在线| 亚洲AV无码国产丝袜在线观看| 亚洲三级在线视频| 一区二区三区免费高清视频| 5555在线播放免费播放| 亚洲国产高清在线一区二区三区| 亚洲AV无码专区亚洲AV伊甸园| 久久久久国产精品免费免费不卡| 四虎影视在线永久免费看黄| 亚洲不卡1卡2卡三卡2021麻豆| 免费电视剧在线观看| 亚洲第一AAAAA片| 免费看内射乌克兰女| 麻豆国产精品免费视频| 精品国产亚洲一区二区在线观看 | 中文字幕亚洲综合久久男男| 国产一精品一av一免费爽爽| 亚洲精品人成电影网| jizz免费在线影视观看网站| 天天看免费高清影视| 国产精品亚洲а∨无码播放不卡 | 4455永久在线观免费看| 亚洲日本成本人观看| 国产福利电影一区二区三区,亚洲国模精品一区 | 国产免费人视频在线观看免费| 国产精品免费看久久久香蕉| 久久精品国产精品亚洲色婷婷| 毛片基地免费视频a| 国产男女爽爽爽免费视频 | 亚洲精品国产美女久久久| h片在线观看免费|