mmx-编译脚本
脚本目录位置
/home/zhangshuli/git2/vanzo_team/xulei/Mmx.py
在~/bin目录下,链接Mmx.py
ln -sf ~/git2/vanzo_team/xulei/Mmx.py mmx
这样就可已直接使用mmx了。mmx结果如下
Contacts
Settings
Mms
Dialer
Phone
Music
Gallery2
Launcher3
Browser
Keyguard
DocumentsUI
services
android.policy
SystemUI
SettingsProvider
framework
framework-res
DeskClock
如果你想添加自己的模块到mmx,可以进行如下操作
1)进入 ~/git2/vanzo_team/xulei/Mmx.py
2) 在如下内容中添加你的模块
module_info =[
["Contacts","packages/apps/Contacts", "com.android.contacts"],
["Settings","packages/apps/Settings", "com.android.settings"],
["Mms","packages/apps/Mms", "com.android.mms"],
["Dialer","packages/apps/Dialer", "com.android.dailer"],
["Phone","packages/apps/Phone", "com.android.phone"],
["Music","packages/apps/Music", "com.android.music"],
["Gallery2","packages/apps/Gallery2", "com.android.gallery2"],
["Launcher3","vendor/tmobile/apps/Trebuchet", "com.android.launcher3"],
["Browser","packages/apps/Browser", "com.android.browser"],
["Email","packages/apps/Email", "com.android.email"],
["Keyguard","frameworks/base/packages/Keyguard", "com.android.systemui"],
["DocumentsUI","frameworks/base/packages/DocumentsUI"],
["services","frameworks/base/services", "zygote"],
["android.policy","frameworks/base/policy", "zygote"],
["SystemUI","frameworks/base/packages/SystemUI", "com.android.systemui"],
["SettingsProvider","frameworks/base/packages/SettingsProvider", "zygote"],
["framework","frameworks/base", "zygote"],
["framework-res","frameworks/base/core/res", "zygote"],
["DeskClock","vanzo/packages/DeskClock", "com.android.deskclock"],
]
添加三条属性分别为
1:模块编译以后的名称(可以在Android.mk中差中LOCAL_PACKAGE_NAME )
2:模块的路径
3:模块的进程名(可以使用adb shell;ps | grep 模块关键字查询)
mmx 的使用有两点需要注意
1.mmx使用的项目,项目目录层次必须是/home/zhangshuli/PROJIEC/PROJICT/35m的层次结构,也就是必须是5层
2.根目录下必须有project.config文件(这个文件是使用do_pj下拉代码自动生成的,你也可以进行手动添加)内容如下
n320a-kewei-35m-ophone
所以,根据上面两条,如果你想在自己已有的项目中使用mmx,可以把你当前的项目放到
/home/username/**/**/ 这样的目录结构下,然后添加project.config文件在根目录下就可以了
补充
mmx添加了另外一种编译方式
mmx 0:是常规模式./am xx mmm package/apps/Contacts方式编译
mmx -d 0:是./am xx make Contacts
第二种编译会检查模块依赖,编译时间较久,及时代码没有编译,使用第二种方式也可以编译模块。
类似以前的 r dr Contacts
mmx-编译脚本的更多相关文章
- SCons - 简单而强大的项目编译脚本
N年前学的makefile,当时还勉强能写一些简单的工程编译,现在已经基本忘了.makefile确实编写复杂,而且平时也不是经常使用,容易忘记.偶识了scons,一切都变的简单了.最近研究了下scon ...
- Android系统编译脚本理解
android源码编译步骤: 1. repo sync 代码(下载代码) 2.start branch(用哪个分支,git相关) 3. 到根目录(android目录) $cd android/ 4. ...
- FFmpeg示例程序合集-批量编译脚本
此前做了一系列有关FFmpeg的示例程序,组成了<最简单的FFmpeg示例程序合集>,其中包含了如下项目:simplest ffmpeg player: ...
- Android NDK学习(二):编译脚本语法Android.mk和Application.mk
一.Android.mk Android.mk分为一下几部分: LOCAL_PATH:= $(call my-dir), 返回当前文件在系统中的路径,Android.mk文件开始时必须定义该变量. i ...
- Powershell极速教程-如何在三分钟内编写项目编译脚本
分析及思路 来看一下项目目录结构 炒鸡正常的三板斧src+docs+tests.咦,怎么会多出一个build的文件夹呢,这就是我们今天要研究的目录.今天我会带着大家在五分钟之内编写一个极简的编译脚本. ...
- Gradle Android最新自动化编译脚本教程
转自:http://blog.csdn.net/changemyself/article/details/39927381 一.前言 Gradle 是以 Groovy 语言为基础,面向Java应用为主 ...
- Skia构建系统与编译脚本分析
分析下Skia的构建系统,详细编译过程參看Windows下从源代码编译Skia.这里以ninja为例来分析.运行以下三条命令就能够完毕编译: SET "GYP_GENERATORS=ninj ...
- Gradle Android它自己的编译脚本教程的最新举措(提供demo源代码)
一.前言 Gradle 是以 Groovy 语言为基础,面向Java应用为主.基于DSL(领域特定语言)语法的自己主动化构建工具. 上面这句话我认为写得非常官方,大家仅仅需知道Gradle能够用来an ...
- ffmpeg学习笔记-编译脚本
之前已经用他人的编译脚本对ffmpeg进行了成功编译,那么在裁剪ffmpeg的时候需要指定文件,这时候应该怎么编写编译脚本呢?本文目的在于说明ffmpeg编译脚本的编写 首先在ffmpeg的目录下新建 ...
- SCons - 简单而强大的项目编译脚本(原文https://www.cnblogs.com/binchen-china/p/5646791.html)
N年前学的makefile,当时还勉强能写一些简单的工程编译,现在已经基本忘了.makefile确实编写复杂,而且平时也不是经常使用,容易忘记.偶识了scons,一切都变的简单了.最近研究了下scon ...
随机推荐
- GOLANG 加密,解密,GUID 小方法
golang的 MD5加密.BASE64解密 guid 的代码: /** * 用于加密,解密,(包含MD5加密和base64加密/解密)以及GUID的生成 * 时间: * zhifieya */ p ...
- MySQL Server 5.5.44免安装版配置详解
转载地址:http://wenku.baidu.com/view/2a8bfe6a25c52cc58bd6beff.html### 一 下载MySQL http://dev.mysql.com/dow ...
- ZOJ 3435 Ideal Puzzle Bobble 莫比乌斯反演
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4119 依然是三维空间内求(1,1,1)~(a,b,c)能看到的整点数,平移一下 ...
- Python中import和from的一些事。。。
摘自python学习手册, 用于记录. 客户端可以执行import或from语句.如果模块还没有加载,这两个语句会去搜索.编译以及执行模块文件程序.主要差别在于,import会读取整个模块,所以必须进 ...
- hdu 5312 Sequence(数学推导——三角形数)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5312 Sequence Time Limit: 2000/2000 MS (Java/Others) ...
- JavaScript数组的某些操作(二)
7.颠倒数组中元素的顺序(注意:不是为数组排序)--reverse方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...
- Java的线程机制
一.Java中实现多线程的两种方式1) 继承Thread类 Thread类包括了包括和创建线程所需的一切东西. Thread 最重要的方法是 run().编写线程程序时须要覆盖 run() 方法,ru ...
- json和XML
发请求(url) 1.client ---------------->服务端 发送数据(Json/xml) < - ...
- ip6tables: ipv6-icmp vs icmp
ip6tables: ipv6-icmp vs icmp资料来源 https://www.jethrocarr.com/2013/02/09/ip6tables-ipv6-icmp-vs-icmp/I ...
- 浏览器(BOM)对象的一些内置方法总结
浏览器(BOM)对象的一些内置方法总结 一.总结 1.bom就是浏览器那端执行的代码,dom就是服务器那端操作html的代码 2.记好bom的几个对象,那就很好理解很多代码了,也很好写很多代码了 二. ...