android高通平台调用恢复出厂设置的方法

本文介绍了在高通平台上的Android设备如何通过广播调用恢复出厂设置的方法。具体步骤包括在Settings应用中创建广播接收器类,并在应用中发送特定广播触发恢复出厂设置流程。

    百度上解析恢复出厂设置的过程有很多的资料,一搜一堆,这里我只说在高通平台上如何调用恢复出厂设置的方法。

 进入package/app/Settings下find -name MasterClearConfirm.java 这个类,找到doMasterClear() 这个方法,

 private void doMasterClear() {
        Intent intent = new Intent(Intent.ACTION_MASTER_CLEAR);
        intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
        intent.putExtra(Intent.EXTRA_REASON, "MasterClearConfirm");
        intent.putExtra(Intent.EXTRA_WIPE_EXTERNAL_STORAGE, mEraseSdCard);
        getActivity().sendBroadcast(intent);
        // Intent handling is asynchronous -- assume it will happen soon.
    }

 这个方法是发送广播的。然后我们可以在Settings里新建一个广播类用于接受应用发送的广播,接受到此广播后,再发送上面方法中的广播。具体做法:

 1.新建广播类SendResetBroadcast

package com.android.settings;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;

public class SendResetBroadcast extends BroadcastReceiver {
        private boolean mEraseSdCard;
        @Override
        public void onReceive(Context context, Intent intent) {
                // TODO Auto-generated method stub
                String action = intent.getAction();
                if(action.equals("com.qucii.sendreset")){
                intent = new Intent(Intent.ACTION_MASTER_CLEAR);
                intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
                intent.putExtra(Intent.EXTRA_REASON, "MasterClearConfirm");
                intent.putExtra(Intent.EXTRA_WIPE_EXTERNAL_STORAGE, mEraseSdCard);
                context.sendBroadcast(intent);
                }
        }

}

  2.在Settings中的AndroidManifest.xml注册广播

<receiver android:name="com.android.settings.SendResetBroadcast">
            <intent-filter >
                <action android:name="com.qucii.sendreset"/>
            </intent-filter>
</receiver>

 3.应用apk中发送一个广播

Intent intent = new Intent();
intent.setAction("com.qucii.sendreset");

this.sendBroadcast(intent);

编译Settings,push到测试机替换Settings.apk,打开应用apk,点击发送广播,手机恢复出厂设置。过程就是这样

 参考资料链接Android6.0 Reset恢复出厂设置流程分析


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值