美文网首页
Android系统使用时莫名重启进入recovery

Android系统使用时莫名重启进入recovery

作者: smartsharp | 来源:发表于2019-10-14 11:26 被阅读0次

最近客户报了个问题,使用手机时莫名关机重启进入了recovery模式,提示如下内容:

"Can't load Android system. Your data may be corrupt.  If you continue to get this message, you may need to perform a factory data reset and erase all user data stored on this device."

然后下面出现两行菜单:

"Try again"

"Factory data reset"

点击 Try again 可以正常进入系统。

奇怪的是这整个过程很自然,有关机动画播放,然后再重启进入 recovery 模式,这个模式让客户很懵逼。

分析发现,这是 Android 系统的一个自救措施,当内置的persistent类型的应用频繁crash时,就启动了这个自救功能。

最终从 /data/system/dropbox取到的内容也可以看到,其中一款persistent类型应用有很多crash log。

Android 自救程序可以参考: com.android.server.RescueParty

这个类官方说明是

/**

* Utilities to help rescue the system from crash loops. Callers are expected to

* report boot events and persistent app crashes, and if they happen frequently

* enough this class will slowly escalate through several rescue operations

* before finally rebooting and prompting the user if they want to wipe data as

* a last resort.

*

*/

执行流程是:

notePersistentAppCrash -> executeRescueLevel -> RecoverySystem.rebootPromptAndWipeUserData(context, TAG)

把最后重启的过程代码屏蔽即可避免进入recovery模式。

相关文章

网友评论

      本文标题:Android系统使用时莫名重启进入recovery

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