欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析Android手機衛(wèi)士sim卡綁定

 更新時間:2016年04月13日 10:57:38   作者:陶士涵  
這篇文章主要介紹了淺析Android手機衛(wèi)士sim卡綁定的相關(guān)資料,需要的朋友可以參考下

讀取sim卡的序列號,保存起來,一旦sim發(fā)生變更了,認為是小偷的sim卡,發(fā)出警告

讀取sim卡序列號

獲取TelephonyManager對象,通過getSystemService(TELEPHONY_SERVICE)

調(diào)用TelephonyManager對象的getSimSerialNumber()方法,得到String類型的序列號

把序列號保存在SharedPreences里面

需要加權(quán)限 android.permission.READ_PHONE_STATE

檢測sim卡是否變更

使用廣播接收者,監(jiān)聽手機的開機廣播

新建一個包 xxx.receiver,新建一個類BootCompleteReceiver.java

清單文件注冊一下,添加<receiver>節(jié)點,設(shè)置名稱android:name=”xxx”

添加意圖過濾器<intent-filter>節(jié)點

添加動作<action/>節(jié)點,設(shè)置監(jiān)聽動作名稱android.intent.action.BOOT_COMPLETED

在BootCompleteReceiver類里面的onReceive()方法里,接收到廣播,讀取當(dāng)前的sim卡序列號,比較之前保存的sim卡序列號,如果不一樣就發(fā)送短信給安全號碼

監(jiān)聽開機啟動需要權(quán)限 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);
//讀取當(dāng)前的sim卡序列號
tm=(TelephonyManager) cotext.getSystemService(Context.TELEPHONY_SERVICE);
String relSim=tm.getSimSerialNumber();
//讀取之前保存的
String saveSim=sp.getString("sim", "");
//判斷后發(fā)短信
if(saveSim.equals(relSim)){
}else{
//發(fā)送報警短息給安全號碼
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);
// 根據(jù)保存的數(shù)據(jù)設(shè)置狀態(tài)
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();
}
}

相關(guān)文章

  • Android監(jiān)聽鍵盤狀態(tài)獲取鍵盤高度的實現(xiàn)方法

    Android監(jiān)聽鍵盤狀態(tài)獲取鍵盤高度的實現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于Android監(jiān)聽鍵盤狀態(tài)獲取鍵盤高度的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Android中使用socket通信實現(xiàn)消息推送的方法詳解

    Android中使用socket通信實現(xiàn)消息推送的方法詳解

    這篇文章主要介紹了Android中使用socket通信實現(xiàn)消息推送的方法,文中舉了一個消息發(fā)送端和一個消息接收端以及服務(wù)器端的例子來說明原理并且展示了客戶端的實現(xiàn),需要的朋友可以參考下
    2016-04-04
  • Android scheme 跳轉(zhuǎn)的設(shè)計與實現(xiàn)詳解

    Android scheme 跳轉(zhuǎn)的設(shè)計與實現(xiàn)詳解

    這篇文章主要介紹了Android scheme 跳轉(zhuǎn)的設(shè)計與實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Java實現(xiàn)Andriod帶看括弧的計算器代碼

    Java實現(xiàn)Andriod帶看括弧的計算器代碼

    這篇文章主要介紹了Java實現(xiàn)Andriod帶看括弧的計算器代碼的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • Android 動態(tài)高斯模糊效果教程

    Android 動態(tài)高斯模糊效果教程

    本文主要介紹Android 動態(tài)高斯模糊效果教程,這里整理了詳細的資料及實例實現(xiàn)代碼,有興趣的小伙伴可以參考下
    2016-09-09
  • Android Compose衰減動畫Animatable使用詳解

    Android Compose衰減動畫Animatable使用詳解

    這篇文章主要為大家介紹了Android Compose衰減動畫Animatable使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • Android Studio和Gradle使用不同位置JDK的問題解決

    Android Studio和Gradle使用不同位置JDK的問題解決

    這篇文章主要介紹了Android Studio和Gradle使用不同位置JDK的問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • android 開發(fā)教程之日歷項目實踐(一)

    android 開發(fā)教程之日歷項目實踐(一)

    決定開始學(xué)習(xí) Android 平臺下的軟件開發(fā),以日歷作為實踐項目,進行一周后,基本完成,有需要的朋友可以參考下
    2013-01-01
  • Android中3種圖片壓縮處理方法

    Android中3種圖片壓縮處理方法

    這篇文章主要介紹了Android中3種圖片壓縮處理方法,本文講解了質(zhì)量壓縮方法、獲得縮略圖、圖片縮放三種方法并分別給出示例代碼,需要的朋友可以參考下
    2015-06-06
  • Android自定義GestureDetector實現(xiàn)手勢ImageView

    Android自定義GestureDetector實現(xiàn)手勢ImageView

    這篇文章主要為大家詳細介紹了Android自定義GestureDetector實現(xiàn)手勢ImageView的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03

最新評論