Android开发

Android 11源码 修改系统App后进行编译

本文主要是介绍Android 11源码 修改系统App后进行编译,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Android 11源码 修改系统App后进行编译

  • Android 11源码 修改系统App后进行编译
    • 修改系统日历App源码
    • 编译修改后的App
    • 安装生成的apk到样机,并查看修改结果

目标: 修改系统App源码,然后编译生成apk。我们在系统日历App中增加一个日志输出,然后编译生成apk,并安装查看修改效果。

修改系统日历App源码

  1. 进入系统日历App目录
    系统日历App源码在下载的Android 11源码下 /packages/app/Calendar/目录。Android11源码下载参考文章: Ubuntu 16.04下载编译Android11源码。
cd ~/aosp/packages/app/Calendar

在这里插入图片描述

  1. 用编辑软件打开Calendar目录
    在这里插入图片描述

  2. 修改App源码
    我们分别在ActivityonCreate()onDestory()回调函数中增加log日志信息输出

AllInOneActivity.java文件修改如下:

// 省略其他代码
...
	
@override
protected void onCreate(Bundle icicle) {
	super.onCreate(icicle);

	// 20210615:add by lxy
	Log.i(TAG, "App onCreate(): add by lxy");
	
	// 省略其他代码
	...
}

// 省略其他代码
...

@override
protected void onDestroy() {
	super.onDestroy();

	// 20210615:add by lxy
	Log.i(TAG, "App onDestroy(): add by lxy");
	
	// 省略其他代码
	...
}

在这里插入图片描述

在这里插入图片描述

编译修改后的App

因为只修改了日历App的源码,我们只用对该App重新编译即可,不用对整个源码进行编译。

  1. 执行环境编译:
cd ~/aosp
source build/envsetup.sh

在这里插入图片描述

  1. 进入到系统日历App目录:
cd ~/aosp/packages/app/Calendar
  1. 执行模块编译命令:
mm

在这里插入图片描述

  1. 编译后会生成apk文件,输出到out/target/product/generic/system/product/app/Calendar/Calendar.apk

安装生成的apk到样机,并查看修改结果

  1. 使用命令安装apk:
cd ~/aosp/out/target/product/generic/system/product/app/Calendar
adb install -r Calendar.apk
  1. 命令行查看log日志信息:
adb shell logcat -s "AllInOneActivity"
  1. 启动日历App,我们看到命令行输出了我们添加的日志信息:
    在这里插入图片描述
这篇关于Android 11源码 修改系统App后进行编译的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!