android编译源码framework,并push到android终端

今天接到一个需求,IPTV无论任何地方按“首页”键都返回到首页。

这个改动就会需要动到安卓源码framework层。我这个项目的路径是

Y:\guizhou\hisi4.4_379x\frameworks\base\policy\src\com\android\internal\policy\impl,文件是PhoneWindowManager.java。

1、整包编译的方法如下:

 改好后,就进行编译;

先对大包进行编译:source build/envsetup.sh-->lunch-->选择Hi3798MV100-eng-->make bigfish -j64。等20分钟左右就将大包编译完成。

2、对framework进行部分编译:改好代码后。

  • mmm 编译

mmm 命令只能编译有 Android.mk 文件的目录,并且它有个特点,我称之为最小单位编译,什么意思呢,就是最小单位编译咯。。。

啊,,,啊,壮士,请放下你手中愤怒的西瓜刀!!!听我解释… 
所谓最小单位编译,就是如果你改了一个目录的代码,比如修改了 android/frameworks/base/core/res/res/layout/ 目录下的布局文件,而该路径中,base/ 目录和第一个 res/ 目录都包含 Android.mk 文件,这个时候,你必须编译 res/ 目录,命令如下:

mmm frameworks/base/policy。

编译完成后就会在Y:\guizhou\hisi4.4_379x\out\target\product\Hi3798MV100\system\framework路径下找到编译好的android.policy.jar。

然后将android.policy.jar推到安卓终端。命令如下:

adb connect 192.168.76.6:30016---连接终端;

adb remount----获得写入读写权限;

adb push Y:\guizhou\hisi4.4_379x\out\target\product\Hi3798MV100\system\framework\android.policy.jar

 /system/framework -----将jar文件push入终端。

sync--sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。

reboot--重启终端。

 

完成。

猜你喜欢

转载自blog.csdn.net/sianno1992/article/details/81367687