android升级失败,开机logo后卡住,无限重启

本文探讨了Android4.3系统在更新SettingsProvider.apk过程中出现的异常重启问题。升级中断,尤其是断电情况,会导致旧应用标记为不可用但未被替换,进而引发ActivityManagerService启动失败,造成设备卡在logo界面并最终重启。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系统:android 4.3
现象:动态logo跑完后,卡住不显示launcher,等待一段时间后重启
log:
I/PackageManager( 3054): Expecting better updatd system app for com.android.providers.settings; removing system app

SettingsProvider.apk是升级前的旧的app,不能使用

导致下面ActivityManagerService启动失败:
E/ActivityThread( 3054): Failed to find provider info for setting E/System ( 3054): java.lang.NullPointerException E/System ( 3054): at
android.provider.Settings$NameValueCache.getStringForUser(Settings.java:865)

Systemserver在启动AcitivtyManagerservice时需要SettingsProvider.apk,而这个包不能使用导致CoreSettingsObserver初始发生空指针。
AcitivtyManagerservice为关键服务,启动失败后车机无法启动,超时会重启。

正常的升级过程:
-旧的SettingsProvider.apk被标记不能使用,
-删除标记不能使用的SettingsProvider.apk,
-拷贝升级包中SettingsProvider.apk至system/app,至此完成system app的升级

详细的流程请参考PackageManagerService,对于systemapp的替换详查replaceSystemPackageLI函数。

升级过程中第1步执行完毕升级异常中断,一般为断电情况发生。最终导致上述卡logo现象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值