脚本目录位置

/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
Email
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-编译脚本的更多相关文章

  1. SCons - 简单而强大的项目编译脚本

    N年前学的makefile,当时还勉强能写一些简单的工程编译,现在已经基本忘了.makefile确实编写复杂,而且平时也不是经常使用,容易忘记.偶识了scons,一切都变的简单了.最近研究了下scon ...

  2. Android系统编译脚本理解

    android源码编译步骤: 1. repo sync 代码(下载代码) 2.start branch(用哪个分支,git相关) 3. 到根目录(android目录) $cd android/ 4. ...

  3. FFmpeg示例程序合集-批量编译脚本

    此前做了一系列有关FFmpeg的示例程序,组成了<最简单的FFmpeg示例程序合集>,其中包含了如下项目:simplest ffmpeg player:                   ...

  4. Android NDK学习(二):编译脚本语法Android.mk和Application.mk

    一.Android.mk Android.mk分为一下几部分: LOCAL_PATH:= $(call my-dir), 返回当前文件在系统中的路径,Android.mk文件开始时必须定义该变量. i ...

  5. Powershell极速教程-如何在三分钟内编写项目编译脚本

    分析及思路 来看一下项目目录结构 炒鸡正常的三板斧src+docs+tests.咦,怎么会多出一个build的文件夹呢,这就是我们今天要研究的目录.今天我会带着大家在五分钟之内编写一个极简的编译脚本. ...

  6. Gradle Android最新自动化编译脚本教程

    转自:http://blog.csdn.net/changemyself/article/details/39927381 一.前言 Gradle 是以 Groovy 语言为基础,面向Java应用为主 ...

  7. Skia构建系统与编译脚本分析

    分析下Skia的构建系统,详细编译过程參看Windows下从源代码编译Skia.这里以ninja为例来分析.运行以下三条命令就能够完毕编译: SET "GYP_GENERATORS=ninj ...

  8. Gradle Android它自己的编译脚本教程的最新举措(提供demo源代码)

    一.前言 Gradle 是以 Groovy 语言为基础,面向Java应用为主.基于DSL(领域特定语言)语法的自己主动化构建工具. 上面这句话我认为写得非常官方,大家仅仅需知道Gradle能够用来an ...

  9. ffmpeg学习笔记-编译脚本

    之前已经用他人的编译脚本对ffmpeg进行了成功编译,那么在裁剪ffmpeg的时候需要指定文件,这时候应该怎么编写编译脚本呢?本文目的在于说明ffmpeg编译脚本的编写 首先在ffmpeg的目录下新建 ...

  10. SCons - 简单而强大的项目编译脚本(原文https://www.cnblogs.com/binchen-china/p/5646791.html)

    N年前学的makefile,当时还勉强能写一些简单的工程编译,现在已经基本忘了.makefile确实编写复杂,而且平时也不是经常使用,容易忘记.偶识了scons,一切都变的简单了.最近研究了下scon ...

随机推荐

  1. POJ 1671 第二类斯特林数

    思路: 递推出来斯特林数 求个和 if(i==j)f[i][j]=1; else f[i][j]=f[i-1][j-1]+f[i-1][j]*j; //By SiriusRen #include &l ...

  2. BZOJ 1050 枚举+并查集

    思路: 枚举最大边 像Kruskal一样加边 每回更新一下 就搞定了- //By SiriusRen #include <cstdio> #include <cstring> ...

  3. [Chromium文档转载,第006章]Chrome IPC To Mojo IPC Cheat Sheet

    For Developers‎ > ‎Design Documents‎ > ‎Mojo‎ > ‎ Chrome IPC To Mojo IPC Cheat Sheet 目录 1 O ...

  4. 在hive执行创建表的命令,遇到异常com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

    今天在练习hive的操作时,在创建数据表时,遇到了异常 FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.ex ...

  5. MySQL改变表的存储引擎

    MySQL提供了多种数据库存储引擎,存储引擎负责MySQL数据库中的数据的存储和提取.不同的存储引擎具有不同的特性,有时可能须要将一个已经存在的表的存储引擎转换成另外的一个存储引擎.有非常多方法能够完 ...

  6. iOS项目开发实战——iOS网络编程获取网页Html源码

    现在我们身处互联网的时代.不论什么一个软件或是App,都会或多或少与网络打交道,并不断发生数据交互.一个没有涉及网络编程的应用会显得比較low,这里我们将会開始使用Swift开发iOS应用,而且主要来 ...

  7. java导入大量Excel时报错

    在项目中同事遇到一问题,如今给大家分享一下. 在程序里面导入两千多条数据后.程序就报错. 刚開始以为是内存的问题.在经过细致跟踪代码后发现每次都是833行的第三列报错.也就是第一万列.最后在网上找到了 ...

  8. HDOJ 5306 Gorgeous Sequence 线段树

    http://www.shuizilong.com/house/archives/hdu-5306-gorgeous-sequence/ Gorgeous Sequence Time Limit: 6 ...

  9. 【BUG】&quot;main&quot; prio=5 tid=1 RUNNABLE

    载入超大效果图导致内存不足(GC/ANR) 06-30 11:42:56.624: D/dalvikvm(16264): GC_CONCURRENT freed 1982K, 7% free 4537 ...

  10. 机器学习完整过程案例分布解析,python代码解析

    所谓学习问题,是指观察由n个样本组成的集合,并依据这些数据来预測未知数据的性质. 学习任务(一个二分类问题): 区分一个普通的互联网检索Query是否具有某个垂直领域的意图.如果如今有一个O2O领域的 ...