Android源码中添加 修改应用

第一部分:添加一个新的应用

1. 在和系统相同版本的SDK目录下开发自己的android应用
2. 把开发的android工程放到源码的packages/apps/目录下
3. 在工程目录下添加Android.mk文件,修改LOCAL_PACKAGE_NAME :=test001 把工程名指定为自己的工程名,我加载的工程为test001
    LOCAL_PATH:= $(call my-dir)   
    include $(CLEAR_VARS)

    LOCAL_MODULE_TAGS := user

    LOCAL_SRC_FILES := $(call all-java-files-under, src)

    LOCAL_STATIC_JAVA_LIBRARIES := googlelogin-client

    LOCAL_PACKAGE_NAME :=test001
    LOCAL_CERTIFICATE := shared

    include $(BUILD_PACKAGE)

    # Use the folloing include to make our test apk.
    include $(call all-makefiles-under,$(LOCAL_PATH))
4. 回到源码目录,然后执行 . build/envsetup.sh 注意sh后面有个空格
5. 执行mmm packages/apps/test001  编译test001.apk包
6. 执行make snod,编译system.img包
7. 执行emulator &就可以在应用程序下看到自己编译的工程了

第二部分:修改原有的Android应用

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 &),就可以看到你的修改了。

原文地址:https://www.cnblogs.com/zhangweia/p/1803445.html