码迷,mamicode.com
首页 > 其他好文 > 详细

10.SIM卡

时间:2015-10-29 21:42:33      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:

绑定sim卡
  1. ublic class Setup2Activity extends BaseSetupActivity {
  2. private SettingItemView sivSim;
  3. @Override
  4. protected void onCreate(Bundle savedInstanceState) {
  5. super.onCreate(savedInstanceState);
  6. setContentView(R.layout.activity_setup2);
  7. sivSim = (SettingItemView) findViewById(R.id.siv_sim);
  8. String sim = mPref.getString("sim", null);
  9. if (!TextUtils.isEmpty(sim)) {
  10. sivSim.setChecked(true);
  11. } else {
  12. sivSim.setChecked(false);
  13. }
  14. sivSim.setOnClickListener(new OnClickListener() {
  15. @Override
  16. public void onClick(View v) {
  17. if (sivSim.isChecked()) {
  18. sivSim.setChecked(false);
  19. mPref.edit().remove("sim").commit();// 删除已绑定的sim卡
  20. } else {
  21. sivSim.setChecked(true);
  22. // 保存sim卡信息
  23. TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
  24. String simSerialNumber = tm.getSimSerialNumber();// 获取sim卡序列号
  25. System.out.println("sim卡序列号:" + simSerialNumber);
  26. mPref.edit().putString("sim", simSerialNumber).commit();// 将sim卡序列号保存在sp中
  27. }
  28. }
  29. });
  30. }
  31. @Override
  32. public void showNextPage() {
  33. // 如果sim卡没有绑定,就不允许进入下一个页面
  34. String sim = mPref.getString("sim", null);
  35. if (TextUtils.isEmpty(sim)) {
  36. ToastUtils.showToast(this, "必须绑定sim卡!");
  37. return;
  38. }
  39. startActivity(new Intent(this, Setup3Activity.class));
  40. finish();
  41. // 两个界面切换的动画
  42. overridePendingTransition(R.anim.tran_in, R.anim.tran_out);// 进入动画和退出动画
  43. }
  44. @Override
  45. public void showPreviousPage() {
  46. startActivity(new Intent(this, Setup1Activity.class));
  47. finish();
  48. // 两个界面切换的动画
  49. overridePendingTransition(R.anim.tran_previous_in,
  50. R.anim.tran_previous_out);// 进入动画和退出动画
  51. }
  52. }
监听开机启动,检测sim卡变化
  1. /**
  2. * 监听手机开机启动的广播
  3. *
  4. * @author Kevin
  5. *
  6. */
  7. public class BootCompleteReceiver extends BroadcastReceiver {
  8. @Override
  9. public void onReceive(Context context, Intent intent) {
  10. SharedPreferences sp = context.getSharedPreferences("config",
  11. Context.MODE_PRIVATE);
  12. boolean protect = sp.getBoolean("protect", false);
  13. // 只有在防盗保护开启的前提下才进行sim卡判断
  14. if (protect) {
  15. String sim = sp.getString("sim", null);// 获取绑定的sim卡
  16. if (!TextUtils.isEmpty(sim)) {
  17. // 获取当前手机的sim卡
  18. TelephonyManager tm = (TelephonyManager) context
  19. .getSystemService(Context.TELEPHONY_SERVICE);
  20. String currentSim = tm.getSimSerialNumber() + "111";// 拿到当前手机的sim卡
  21. if (sim.equals(currentSim)) {
  22. System.out.println("手机安全");
  23. } else {
  24. System.out.println("sim卡已经变化, 发送报警短信!!!");
  25. String phone = sp.getString("safe_phone", "");// 读取安全号码
  26. // 发送短信给安全号码
  27. SmsManager smsManager = SmsManager.getDefault();
  28. smsManager.sendTextMessage(phone, null,
  29. "sim card changed!", null, null);
  30. }
  31. }
  32. }
  33. }
  34. }
记得要注册
  1. <receiver android:name=".receiver.BootCompleteReceiver" >
  2. <intent-filter>
  3. <action android:name="android.intent.action.BOOT_COMPLETED" />
  4. </intent-filter>
  5. </receiver>

























10.SIM卡

标签:

原文地址:http://www.cnblogs.com/liuyu0529/p/4921663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!