美文网首页
Android4.4 recovery模式-艾拉比

Android4.4 recovery模式-艾拉比

作者: DD_Dog | 来源:发表于2023-10-17 09:41 被阅读0次

问题一:使用艾拉比差分升级modem时,出现异常升级失败

日志分析

contents of partition "/dev/block/platform/soc/by-name/l_ldsp" didn't match EMMC:/dev/block/platform/soc/by-name/l_ldsp:3146900:42fe97eca1390ba77c51419c8ae9664ef56cc1c1:3146900:f72d3e40542b4a69ef77d06540dec6c9519ba9a1
file "EMMC:/dev/block/platform/soc/by-name/l_ldsp:3146900:42fe97eca1390ba77c51419c8ae9664ef56cc1c1:3146900:f72d3e40542b4a69ef77d06540dec6c9519ba9a1" doesn't have any of expected sha1 sums; checking cache
failed to stat "/cache/saved.file": No such file or directory

从日志看l_ldsp分区有问题,dsp是我们要升级的Modem文件,该错误指出target底包的dsp跟设备中的dsp不同
结论:在编译OTA时,device/sprd/sp9820e_1h10_c41/modem_bins里面的 dsp跟对应版本的pac包不一致

解决办法

target包一旦生成,无法再修改,只能更改modem_bins后重新编译,也就是说target跟pac包是一一对应的。
因为pac包已经发客户升级,所以差分升级的办法已经行不通,只能整包升级。

注意:modem_bins里面要使用未签名的modem文件,使用签名过的会升级失败

使用新版本的OTA整包,测试升级(限debug版本)

adb root
adb remount
adb shell mkdir /cache/recovery/   #如果文件路径不存在则手动创建
adb shell "echo \"--update_package=/sdcard/update.zip\" > /cache/recovery/command"
adb push update.zip /data/data/com.abupdate.fota_demo_iot/files/update.zip
adb reboot recovery

测试升级成功

问题二:在升级过程中,会出现黄色文字和红色文字的提示如下图:

image.png image.png

分析结论:

这个问题目前分析结论是在升级过程中触发按键会显示升级日志信息(黄色文字),升级完成后会进入recovery选项界面(红色文字),因为有按键触发所以不会自动重启,需要手动选择重启选项,但是因为屏幕显示不全无法选择。
解决方案:屏蔽升级过程中的按键处理,让机器自动重启,在下个版本生效

相关文章

网友评论

      本文标题:Android4.4 recovery模式-艾拉比

      本文链接:https://www.haomeiwen.com/subject/fkwfidtx.html