手机卫士学习18-监听手机开机广播校验SIM卡

本文介绍了如何创建BroadcastReceiver监听手机开机广播,并实现SIM卡校验。主要步骤包括在清单文件中注册广播、添加权限和意图过滤器,以及在广播接收者中编写相关代码。

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

监听手机开机广播校验SIM卡


1    创建一个BroadcastReceiver广播接收者。
2    清单文件注册该广播,添加使用权限许可。并添加开机启动的意图过滤器。
3    在广播里实现代码。


---------------------------------------------------------

1    创建一个BroadcastReceiver广播接收者。

public class BootCompletedReceiver extends BroadcastReceiver {

2    清单文件注册该广播,添加使用权限许可。并添加开机启动的意图过滤器。

  <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

3    在广播里实现代码。

package com.itheima.mobilesafe.receiver;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.widget.Toast;

/**
 * 开机启动完成广播
 * @author Administrator
 *
 */
public class BootCompletedReceiver extends BroadcastReceiver {
	
	private static final String TAG = "BootCompletedReceiver";
	private SharedPreferences sp;
	private TelephonyManager tm;
	
	@Override
	public void onReceive(Context context, Intent intent) {
		
		sp =context.getSharedPreferences("config", Context.MODE_PRIVATE);
		tm =(TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
		// 1.获取之前保存的SIM卡
		String saveSim = sp.getString("sim", null)+"hrz";
		
		//2.获取系统当前的SIM卡
		String realSim = tm.getSimSerialNumber();
		
		//3.校验SIM是否变更
		if(realSim.equals(saveSim)){
			//SIM没有变更
		}else{
			//SIM已经变更
			Log.i(TAG, "SIM已经变更");
			Toast.makeText(context, "SIM已经变更", Toast.LENGTH_LONG).show();
		}
		
		

	}

}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值