android 添加應用到android源碼中

來源:互聯網
上載者:User

(一)第一部分:添加一個新的應用

1 把項目源碼加入到<andrid_src>/packages/apps中,例如:HelloWorld項目。

2 在HelloWorld項目的根目錄下,建立android.mk檔案,內容如下:

 

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
#表示目標模式
LOCAL_MODULE_TAGS := user
#表示源檔案編譯路徑
LOCAL_SRC_FILES := $(call all-java-files-under, src) /
#表示項目包名
LOCAL_PACKAGE_NAME := HelloWorld
#所包含的庫
include $(BUILD_PACKAGE)

 

 

3 進入到<android_src>/build/target/product目錄中,修改core.mk,min_dev.mk,sdk.mk檔案,把自已的項目加入編譯行列中。

如:core.mk

PRODUCT_PACKAGES := /
    framework-res /

    HelloWorld /
    Browser /
    CarHomeLauncher /
    Contacts /
    Home /
    HTMLViewer /
    Phone /
    ApplicationsProvider /
    ContactsProvider /
    DownloadProvider /
    MediaProvider /
    PicoTts /
    SettingsProvider /
    TelephonyProvider /
    TtsService /
    VpnServices /
    UserDictionaryProvider /
    PackageInstaller /
    DefaultContainerService /
    Bugreport

4 全域編譯

進入到<android_src>源碼根目錄

$ make 或者$ mmm package/apps/HelloWorld(或 make HelloWorld)

$執行make snod,編譯system.img包

$執行emulator &就可以在應用程式下看到自己編譯的工程了


(二)

1. 首先建立一個android工程,載入自己的java檔案和資源檔
2. 在自己的android工程初步調試成功以後,把該工程的java檔案,資源檔拷貝到連絡人對應的java檔案和資源檔目錄

3. 然後在linux下執行以下命令,編譯人連絡人模組,把資源檔編譯到連絡人目錄中
        . build/envsetup.sh
        mmm packages/apps/Contacts 
4. 重新整理android源碼工程,這個時候你就可以在Contacts包目錄下看到你新加的資源檔和源檔案了,並可以在源碼工程下修改代碼並直接調試了
5. ?? 為什麼不在android源碼工程下直接添加源檔案和xml資源檔了????
        答:因為我們的android源碼工程師以java工程匯入的,如果添加android的xml檔案的話,java程式無法識別資源R檔案,所以我們必須先把需要的
                xml資源檔先在linux下編譯
6. 在源碼工程修改後,則可在linux下再次執行連絡人編譯命令,並 make snod載入system.img檔案,並啟動模擬器(emulator &),就可以看到你的修改了。

reference:

http://www.cnblogs.com/zhangweia/archive/2010/08/19/1803445.html

http://blog.csdn.net/summerxzg/article/details/6544396

http://wangliping.net/build-apk-in-source

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.