开发日记——手机安全卫士 Day04 2016-7-23 实现SIM换卡提醒功能

Day04 2016-7-23 实现SIM换卡提醒功能
因为换卡必须重新开关机,开机会产生一个广播ACTION_BOOT_COMPLETED,创建广播接收器接收该广播,使用静态注册。
当应用程序启动时系统会创建Application对象(单例模式)。自定义类继承Application类,重写onCreate()方法实现换卡提醒功能。自己创建Application需要在配置文件中注册,给application标签添加name属性。
使用SharedPreferences获取是否开启防盗保护。如果开启,获取绑定SIM卡序列号和安全手机号,使用TelephoneManager获取现在的SIM卡序列号并与绑定的SIM卡序列号进行对比。如果不一致,将提醒短信发送到安全手机号。发送短信需要调用SmsManager.getDefault()方法获取SmsManager实例。调用该实例的sendTextMessage方法发送短信。发送短信需要声明<uses-permission android:name="android.permission.SEND_SMS">权限。
当应用程序启动时系统会创建Application对象(单例模式)。自定义类继承Application类,重写onCreate()方法实现换卡提醒功能。自己创建Application需要在配置文件中注册,给application标签添加name属性。
使用SharedPreferences获取是否开启防盗保护。如果开启,获取绑定SIM卡序列号和安全手机号,使用TelephoneManager获取现在的SIM卡序列号并与绑定的SIM卡序列号进行对比。如果不一致,将提醒短信发送到安全手机号。发送短信需要调用SmsManager.getDefault()方法获取SmsManager实例。如果短信的长度不大于70可以调用该实例的sendTextMessage方法发送短信,如果大于需要将短信使用SmsManager的divideMessage方法分割短信,然后通过sendMultipartTextMessage方法发送。
发送短信需要声明<uses-permission android:name="android.permission.SEND_SMS">权限。

SmsManager smsManager = SmsManager.getDefault();
String message = "XXX";
if (message.length() > 70) {
    ArrayList<String> msgs = smsManager.divideMessage(message);
    smsManager.sendMultipartTextMessage(safenumber, null, msgs, null, null);
} else {
    smsManager.sendTextMessage(safenumber, null, message, null, null);
}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值