zoukankan      html  css  js  c++  java
  • recovery log直接输出到串口

    我们在调试recovery升级的时候,我们经常需要查看recoveryloggoogle的原始逻辑中,recoverylog并非直接输出到串口,我们需要输入命令才能获取,我们有三种方式:

     

        第一种:recovery下,遥控器选择view recovery logs界面上查看。

        第二种:recovery下,输入命令,cat /tmp/recovery.log

        第三种:android下,输入命令,cat  /cache/recovery/last_log

     

     

        有时候我们需要把recoverylog直接输出到终端串口,则我们需要修改下recovery的代码即可,下面以android L5.1)版本的代码修改说明下:

    bootable/recovery/recovery.cpp

     

    static const char *TEMPORARY_LOG_FILE = "/tmp/recovery.log";
    static void redirect_stdio(const char* filename) {
        // If these fail, there's not really anywhere to complain...
        freopen(filename, "a", stdout); setbuf(stdout, NULL);
        freopen(filename, "a", stderr); setbuf(stderr, NULL);
    }
     
    Int main(int argc, char **argv) {
        time_t start = time(NULL);
    
       redirect_stdio(TEMPORARY_LOG_FILE);

    }

    
    
    
    
    
    

    我们只需要把redirect_stdio函数的参数,有”/tmp/recovery.log”修改为”/dev/console”即可。redirect_stdio(”/dev/console”); 不同的平台可能有所不一样,可以先这样验证,echo “111111111” > /dev/console,检验下是否能够把打印正常输出到串口。

  • 相关阅读:
    Sqlsugar中使用Codefrist创建数据库
    EFCore中CoreFrist多个上下文
    高并发
    优先级反转
    二叉树算法
    使用AJAX上传图片
    Entity Framework
    .Net面试题
    LC 1515. Best Position for a Service Centre (Simulated Annealing)
    git
  • 原文地址:https://www.cnblogs.com/codeking100/p/10338637.html
Copyright © 2011-2022 走看看