android OTA 升级优化之二: recovery调试方法改进
2014-03-28 11:31
706 查看
1、 google default debug方法:
log存放在cache目录:/cache/recovery/last_logrecovery操作完成后,系统重启后才能从该目录使用adb pull 拉出log来。
这种defaut debug方法的问题=======》
研发debug不方便
用户ota升级后,经常出问题,但不容易取出log
2、debug改进方法一:启动adb
recovery启动时将adb启动起来,这样研发可以通过adb shell 实时在线调试相关code如下: 、init.c解析启动模式,将adb相关代码编译到recovery image,recovery init.rc启动adb server
bootable/bootloader/lk/app/aboot/aboot.c //lk中添加recovery启动模式,通过cmdline传递给init =======>//qcom平台,mtk不需要这么做
build/core/Makefile
system/core/adb/Android.mk
//build adbd to /sbin/
system/core/sh/Android.mk
//build sh to /sbin/
system/core/toolbox/Android.mk
//build toolbox to /sbin/
system/core/init/init.c
//qcom平台:init.c解析cmdline获取启动模式,mtk平台:直接通过get_boot_mode()获取启动模式,
============>最后设置属性:ro.boot.bootupmode为recovery
/*
mtk as follow:
mt_boot_mode = get_boot_mode();
if(mt_boot_mode == MT_RECOVERY_BOOT)
property_set("ro.boot.bootupmode", "recovery"); // for adb service.c */
system/core/adb/services.c
根据property: ro.boot.bootupmode是normal 还是recovery 启动 "/system/bin/sh" 或 "/bin/sh"
bootable/recovery/etc/init.rc // 启动/sbin/adbd
3、debug改进方法二:保存log到sdcard
为方便获取adb log,recovery可以将内置sdcard mount起来,recovery操作完成退出前,将/tmp/recovery.log 保存到内置sdcard 。相关文章推荐
- 解决android7.1 ota差分升级没有install-recovery.sh的方法
- android OTA 升级优化之三: recovery ui美化
- android OTA 升级优化之一: recovery支持分区更新
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA 升级之二:脚本 ota_from_target_files
- Android Recovery OTA升级(一)—— make otapackage
- Android OTA升级原理和流程分析(五)---update.zip包从上层进入Recovery服务
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA 升级之三:生成recovery.img
- Android OTA升级原理和流程分析(六)---Recovery服务流程细节
- Android OTA 升级之三:生成recovery.img
- Android OTA 升级之三:生成recovery.img
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA升级原理和流程分析(七)---Recovery服务的核心install_package函数
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA 升级之二:脚本 ota_from_target_files
- Android OTA 升级之二:脚本 ota_from_target_files
- dm37xx android2.3.4增加recovery升级功能(二)——调试
- Android OTA 升级之二:脚本 ota_from_target_files