Android 如何才能捕获系统的恢复出厂设置事件

当Android设备恢复出厂设置后,如何在系统重启后判断这一事件并采取相应处理?文章探讨了两种方案:一是修改recovery.c文件在cache分区创建标志文件,但可能因系统优化无法实现;二是利用EntropyService加载初始熵时的错误日志作为标记,这是一个简单且有效的方法,可以在错误处理中设置标志以区分正常开机和恢复出厂设置。
摘要由CSDN通过智能技术生成

     点击恢复出厂设置后,系统重启,再次进入系统后,一切数据都被清空,怎样可以得知之前到底是否恢复出厂设置了呢?怎样可以标记 恢复出厂设置事件 ?我希望在系统重启后,根据客户需求,判断出刚刚恢复过出厂设置,然后添加一些响应和处理,同时还要区别于正常开机或者重启,怎么做呢?

     最开始遇到这个问题,我束手无策,只是大致猜想应该是在Bootloarder中操作捕捉标记,应该很麻烦,所以发了个帖子询问。

     一个朋友提供了方案A:

     这个要修改bootable下的recovery.c文件,让他在擦除了usrdata分区之后,再cache分区中加一个标志文件。我的建议是恢复出厂设置的时候会在cache分区的recovery下有log文件,你开机后可以立马去读这个文件,看做了什么,等android跑起来后会清空cache/recovery/log文件,所以要在适当的时候做处理。

     对于这种方法,理论上是正确的。我在真机上进行实验,开机后,必须以非常麻利的身手,快速的把cache/recovery/log拷贝出来,赶在android系统跑起来之前,完成这一操作。但是并没有达到我想要的目的,原因是,为了满足客户的要求,提高启动速率,减少进入系统前格式化cache所耗费的时间,我们的工程师对这里做了修改。限制了开机启动对cache的写入,即使是恢复出厂设置,也不会创建recovery目录,更不会有Log文件了。

     虽然这个方案落败了,但是幸运的是,又有个朋友提供了方案B:

     一般第一

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值