• Android源代码单个模块编译


    下载&编译Android源码后,自然就想到改其源码后怎么只编译改过的代码

    编译模块

    android中的一个应用程序可以单独编译,编译后要重新生成system.img
    在源码目录下执行
      . build/envsetup.sh (.后面有空格)
    就多出一些命令:
      - 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.
    可以加—help查看用法


    我们可以使用mmm来编译指定目录的模块,如编译联系人:
      mmm packages/apps/Contacts/


    编完之后生成两个文件:
      out/target/product/generic/data/app/ContactsTests.apk
      out/target/product/generic/system/app/ Contacts.apk


    可以使用make snod重新生成system.img
    再运行模拟器

    关于source

    source 命令会把对应脚本中的内容读取到当前的bash 解释器中,在当前的执行环境中执行;其中定义的 function 以及通过 export 声明的变量等在 source 执行结束之后依然存在于当前的bash 环境中。比如我们常用的 source .bashrc 或者 source /etc/profile 等目的是为了引用刚刚改动过的环境变量。

  • 相关阅读:
    Jexus部署Asp.Net Core项目
    Docker 学习
    mysql 调优 (转)
    ZXHN H218N 超级管理员账号
    微擎遇到 请先更新或安装主模块后再安装插件 问题解决
    centos7 + php7
    PPTPD 服务搭建
    精心调制的Bash主题分享
    vue
    木马技术
  • 原文地址:https://www.cnblogs.com/yema/p/4838839.html
Copyright © 2020-2023  润新知