分类 Stability 下的文章

Android平台OEM解锁分析

一般安卓fastboot刷机需要unlock device,也叫unlock bootloader,我想多半和lock/unlock在bootloader中实现有关,ok,下面就来看下相关代码,参考高通平台P LK。device_info中记录了是否解锁,有两个:is_unlocked, is_unlock_critical:static device_info devi...阅读全文

高通平台AB系统刷机说明

A/B系统是Google推的一种OTA升级方法,就是为了方便,简单说就是多了个备份区,升级时写备份区然后尝试从备份区启动,如果启动ok,就把备份区作为主区,遥想当年ROS平台bootloader就有这么个东东。这里不关心OTA流程,我们关心的是A/B系统分区选择相关,A/B下刷机要不要带_a, _b。ok,先让我们看下官方对分区选择说明:A/B system update...阅读全文

分析解决安卓启动一直卡在加密界面的问题

Android P刷机后第一次启动停在了加密界面,提示如下:Wait while your phone is being encrypted.这里是data分区在加密,system/vold/cryptsfs.cpp负责,先看看logcat过滤Cryptfs:01-28 04:50:11.003 D/Cryptfs ( 497): Just asked init to ...阅读全文

Android AB系统recovery镜像构建分析

A/B系统是Google推的一种方便OTA升级版本的特性,好像是N就开始了。之前有好几个问题都是异常进recovery的,不过A/B系统里已经去掉recovery分区了,不再编译recovery.img,那系统是怎么进的recovery?带着这个问题来看下。先看看Google对recovery的介绍:recovery: The recovery partition sto...阅读全文

Android启动时在加密界面后进恢复模式分析

异常进recovery前面已经分析过主要是persist进程crash too many,所以导致进恢复模式,显示"Can't load Android system"。现在又出现这个恢复界面,是在刷完版本第一次开机加密时进入,看离线logcat,竟然没有"FACTORY_RESET"记录,难道和加密有关?上OpenGrok搜下prompt_and_wipe_data:/...阅读全文

Analyze an issue about "Can't load Android system"

Android 9.0启动中异常进入recovery界面,提示"Can't load Android system", 只有两个菜单选项try again + factory reset。framework同事没看,那我来吧,还是先跟下代码。bootable/recovery:static bool prompt_and_wipe_data(Device* device)...阅读全文

Android Go在data分区填近满后不能启动bug分析

最近遇到一个问题:重启压测十来天后出现大量手机不能启动, Android Go/MSM8909,有FWK同事发现空间满了,如下:/dev/block/mmcblk0p39 5.2G 4.8G 340M 94% /data原来是我们自定义的logd一直写满了data分区,删除后立即启动正常,为什么data满了会导致起不来,看了下Z的手机,我折腾了下1h都没起来:msm...阅读全文