Q版本如何设置DebugLoggerUI是否开机自启动(非首次开机)

文摘 Android MediaTek 2020-03-4 阅读:8604

android_Q.jpg

[DESCRIPTION]

   MTK Q版本开始,开机抓Log机制有了部分变化。抓Log的Tool名称也变成DebugLoggerUI
   尤其针对非首次开机而言变化比较大。老的方案 FAQ17814 适合P版本以及之前的非首次开机方案。
   Q版本开始 "Start Automatically" 已经被拿掉了。

[SOLUTION]

    Mobile Log 有一个控制文件"/data/misc/mblog/mblog_config", 里面的变量autostart 控制下次开机是否抓取mobile log.

方案1.
adb shell am broadcast -a com.debug.loggerui.ADB_CMD -e cmd_name set_auto_start_1 --ei cmd_target 23 -n com.debug.loggerui/.framework.LogReceiver

备注:  set_auto_start_1 表示开启开机自启动,set_auto_start_0 表示关闭开机自启动
logTypes = 1 + 2 + 4 + 16 + 32 + 64
(MobileLog : 1, ModemLog : 2, NetworkLog : 4, GPSLog : 16, ConnsysFWLog : 32, BTHostLog : 64)

    本案中 logTypes =23, 客户需要在关机前执行这条指令就能抓到下次开机的mobile Log.

方案2.
adb shell am broadcast -a com.debug.loggerui.ADB_CMD -e cmd_name stop --ei cmd_target 23 -n com.debug.loggerui/.framework.LogReceiver
adb shell am broadcast -a com.debug.loggerui.ADB_CMD -e cmd_name start --ei cmd_target 23 -n com.debug.loggerui/.framework.LogReceiver

   关机前保证log处于running 状态, 则重新开机后, log 就会auto start。我们比较推荐这种方案。
   上述"stop"命令的作用是将Log buffer中剩余的部分Log flush到Log文件中(一般是Log buffer满了才会flush到Log文件). 保证Log文件抓的比较全.
   "start"命令执行后保证变量"autostart"变成1.

0条评论

© 2024 芯缘异码. Powered by Typecho