您的位置:首页 > 其它

开机检查是否更换sim卡

2015-11-17 16:30 302 查看
-------------------监听sim卡是否变更----------------
1.创建一个类 继承BroadcastReceiver  然后在清单文件中声明监听开机完成事件

<!-- 广播接收者 接收开机事件 -->
<receiver android:name="com.heima.mobilesafe.receiver.BootCompleteReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>

2.增加监听开机完成权限
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

3.判断是否更换了sim卡
public class BootCompleteReceiver extends BroadcastReceiver {
// 继承BroadcastReceiver 需要在清单文件中声明接收的信息
private SharedPreferences sp;
private TelephonyManager tm;

@Override
public void onReceive(Context context, Intent intent) {
// 1.拿到之前保存的sim卡串号
sp = context.getSharedPreferences("config", context.MODE_PRIVATE);
//由于没有更换sim卡 所以手动改变了上一次的sim信息 为了演示效果
String last_sim = sp.getString("SIM", null) + "12123";

// 2.拿到当前的sim卡串号
tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String real_sim = tm.getSimSerialNumber();

if (last_sim.equals(real_sim)) {
System.out.println("sim卡没有变更" + last_sim);
} else {
System.out.println("sim卡已经变更,请求锁定" + last_sim + "---------------" + real_sim);
Toast.makeText(context, "sim卡变更,请求锁定" + last_sim + "---------------" + real_sim, 1).show();
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: