• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > [android] 手机卫士绑定sim卡,androidsim

[android] 手机卫士绑定sim卡,androidsim

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android360手机卫士,android手机安全卫士,android手机卫士,android360卫士,android360安全卫士等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

[android] 手机卫士绑定sim卡,androidsim


更新:

收不到启动广播,查看知乎,好像是说高版本的系统都禁止了

还可以通过adb发送开机广播

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED

还没测试,回去再测试

========================== 

读取sim卡的序列号,保存起来,一旦sim发生变更了,认为是小偷的sim卡,发出警告

 

读取sim卡序列号

获取TelephonyManager对象,通过getSystemService(TELEPHONY_SERVICE)

调用TelephonyManager对象的getSimSerialNumber()方法,得到String类型的序列号

把序列号保存在SharedPreences里面

 

需要加权限 android.permission.READ_PHONE_STATE

 

检测sim卡是否变更

使用广播接收者,监听手机的开机广播

新建一个包 xxx.receiver,新建一个类BootCompleteReceiver.java

清单文件注册一下,添加<receiver>节点,设置名称android:name=”xxx”

添加意图过滤器<intent-filter>节点

添加动作<action/>节点,设置监听动作名称android.intent.action.BOOT_COMPLETED

 

在BootCompleteReceiver类里面的onReceive()方法里,接收到广播,读取当前的sim卡序列号,比较之前保存的sim卡序列号,如果不一样就发送短信给安全号码

 

监听开机启动需要权限 android:perission.RECEIVE_BOOT_COMPLETED

 

BootCompleteReceiver.java

 

package com.qingguow.mobilesafe.receiver;

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

public class BootCompleteReceiver extends BroadcastReceiver {
    private TelephonyManager tm;
    private SharedPreferences sp;
    @Override
    public void onReceive(Context cotext, Intent arg1) {
        sp=cotext.getSharedPreferences("config", Context.MODE_PRIVATE);
        //读取当前的sim卡序列号
        tm=(TelephonyManager) cotext.getSystemService(Context.TELEPHONY_SERVICE);
        String relSim=tm.getSimSerialNumber();
        //读取之前保存的
        String saveSim=sp.getString("sim", "");
        //判断后发短信
        if(saveSim.equals(relSim)){
            
        }else{
            //发送报警短息给安全号码
            System.out.println("sim卡变更了");
            Toast.makeText(cotext, "sim卡变更了", 1).show();
        }
    }

}

 

SecGuide2Activity.java

package com.qingguow.mobilesafe;

import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;

import com.qingguow.mobilesafe.ui.SettingItemView;

public class SecGuide2Activity extends BaseSecGuideActivity {
    private SettingItemView siv_sim;
    private SharedPreferences sp;
    private TelephonyManager telephonyManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_lost_find2);
        siv_sim = (SettingItemView) findViewById(R.id.siv_sim);
        sp = getSharedPreferences("config", MODE_PRIVATE);
        telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
        // 根据保存的数据设置状态
        String sim = sp.getString("sim", "");
        if (TextUtils.isEmpty(sim)) {
            siv_sim.setChecked(false);
        } else {
            siv_sim.setChecked(true);
        }
        // 绑定sim卡
        siv_sim.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                String sim = telephonyManager.getSimSerialNumber();
                Editor editor = sp.edit();
                String simSp = sp.getString("sim", "");
                if (TextUtils.isEmpty(simSp)) {
                    siv_sim.setChecked(true);
                    editor.putString("sim", sim);
                } else {
                    siv_sim.setChecked(false);
                    editor.putString("sim", "");
                }

                editor.commit();

            }
        });
    }

    public void nextStep(View v) {
        showNext();
    }

    public void preStep(View v) {
        showPre();
    }

    @Override
    public void showNext() {
        Intent intent = new Intent(this, SecGuide3Activity.class);
        startActivity(intent);
        finish();
    }

    @Override
    public void showPre() {
        Intent intent = new Intent(this, SecGuide1Activity.class);
        startActivity(intent);
        finish();
    }
}

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android 手机卫士17--缓存清理,android17--
  • Android 手机卫士13--进程设置,android13--
  • Android 手机卫士10--应用管理器,android10--
  • Android 手机卫士8--删除通话记录,android8--
  • Android 手机卫士--导航界面4的业务逻辑,android卫士
  • Android 手机卫士--平移动画实现,android卫士
  • Android 手机卫士--获取联系人信息并显示与回显,android回显
  • Android 手机卫士--参照文档编写选择器,android选择器
  • Android 手机卫士--导航界面2,android卫士
  • Android 手机卫士--设置界面&amp;功能列表界面跳转逻辑处理,android卫士--界面

相关文章

  • 2017-05-26Android 事件分发
  • 2017-05-26Android 手机卫士10--应用管理器,android10--
  • 2017-05-26Activity 启动模式,activity启动模式
  • 2017-05-26Android热更新开源项目Tinker集成实践总结,androidtinker
  • 2017-05-26Android 知识Tips,android知识tips
  • 2017-07-23Android打印机--小票打印格式及模板设置
  • 2017-05-26安卓---Toast工具类,有点懒,安卓---toast工具类
  • 2017-05-26Android热补丁技术—dexposed原理简析(手机淘宝采用方案)
  • 2017-05-26DataPicker以及TimePicker显示时间和日期(屏幕上显示),datepicker日期格式
  • 2017-05-26[android] 手机卫士接收短信指令执行相应操作,android接收短信

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • achartengine/MPAndroidChart——图表实现之Java
    • android.view.InflateException: Binary XML file line #34: Error inflating class,
    • Android中使用GridView和ImageViewSwitcher实现电子相册简单功能,gridviewimageview
    • redis使用内存调整及优化
    • Android自定义ViewGroup打造各种风格的SlidingMenu
    • Android开发学习——android存储,android开发存储
    • 自定义图片轮播,简单就是好用,自定义图片轮播
    • Android自动化构建之Ant多渠道打包实践分析(下)
    • Andriod DiskLruCache的使用案例
    • Android 自定义分层级筛选控件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有