mtk Android如何调试recovery模块
通用的调试程序的步骤:
- 找到调试模块在系统代码中的路径;
- 知道代码在哪里之后就是编译代码了,即如何编译调试模块;
- 编译出目标文件后就要将目标文件放到机器中运行,即如何刷到机器中;
目标文件刷到机器中后就是怎么调试代码了,即如何查看调试日志。
弄明白上面四个步骤后我们就可以开始定制或者优化模块之路了,当然前提是还得有相应的编程语言基本功和逻辑分析能力才行!
mtk平台 recovery模块怎么调试?
- 代码路径:
alps/bootable/recovery
注意bootable
是跟framworks
和package
同级的目录; - 编译:
make recoveryimage
注意有些代码用./mk
代替的make
,所以./mk recoveryimage
也是可以编译的; - 第二步编译成功后会在终端输出生成文件的路径,打开mtk的刷机工具
SP_Flash_Tool
,选择Download Only
,勾选boot
和recovery
两个模块,然后点击Download
即可。 - 生成文件已经刷到机器中后,先开机,然后通过
adb reboot recovery
进入recovery
模式,这个时候就会看到一个躺着的机器人了,到这里recovery
就启动完毕了。在这个模式下面我们无法通过adb shell
连接机器,所以adb logcat
也就无法运行,那么我们该怎么查看日志呢。 首先运行adb reboot
正常模式启动机器,前面recovery
模式下面运行的日志会存到cache/recovery/
这个目录下面,这个目录下面包含三个日志文件last_install
、last_kmsg
、last_log
,我们所需要的日志在这三个文件中,注意cache
目录一定要有root
权限才能查看,所以建议用eng
或者user-debug
版本。注意我们这里可以用printf
这个标准c输出函数来将日志写入文件。
如何替换UI
recovery所有的图片资源都在res-
开头的文件夹中,比如:720P
对应的就是res-xhdpi
,如果只是简单的修改UI直接替换相应文件夹里面的图片即可,如果定制复杂的UI逻辑,请参考Android recovery UI实现分析