麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統(tǒng) > Android > 正文

android短信攔截的實現(xiàn)代碼

2020-04-11 12:03:03
字體:
供稿:網(wǎng)友

短信攔截的實現(xiàn)主要是使用了廣播接收者來實現(xiàn)。

BroadcastReceiver  廣播接收者   必須指定要接收的廣播類型。必須明確的指定action

 
廣播:事件。
普通廣播: 是異步的。會廣播接收者同時接收,不能被中斷
sendBroadcast()
有序廣播: 是同步的。會根據(jù)廣播接收的優(yōu)先級進行接收,是可以中斷   短信到來廣播
sendOrderBroadcast()
priority的范圍是:-1000 ~ 1000
如果有序廣播明確的指定了廣播接收者,他是無法被中斷的。

代碼實現(xiàn)如下:

1、MainActivity

復(fù)制代碼 代碼如下:

package com.njupt.t4; 

import android.os.Bundle; 
import android.app.Activity; 
import android.content.IntentFilter; 
import android.view.Menu; 

public class MainActivity extends Activity { 

    private SmsReceiver receiver = new SmsReceiver(); 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main); 

        IntentFilter filter = new IntentFilter(); 
        filter.setPriority(997); 
        filter.addAction("android.provider.Telephony.SMS_RECEIVED"); 
        registerReceiver(receiver,filter); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
        // Inflate the menu; this adds items to the action bar if it is present. 
        getMenuInflater().inflate(R.menu.main, menu); 
        return true; 
    } 

    @Override 
    protected void onDestroy() { 
        super.onDestroy(); 

        unregisterReceiver(receiver); 
    } 



2、SmsReceiver
復(fù)制代碼 代碼如下:

package com.njupt.t4; 

import java.text.SimpleDateFormat; 
import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
import android.telephony.SmsManager; 
import android.telephony.SmsMessage; 

public class SmsReceiver extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 

        System.out.println("章澤天是我老婆,老婆我成功了...."); 
        Bundle bundle = intent.getExtras(); 
        Object[] objects = (Object[]) bundle.get("pdus"); 
        for(Object obj : objects){ 
            SmsMessage smsMessage = SmsMessage.createFromPdu((byte[])obj); 
            String body = smsMessage.getDisplayMessageBody(); 
            String address = smsMessage.getDisplayOriginatingAddress(); 
            long date = smsMessage.getTimestampMillis(); 

            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); 
            String dateStr = format.format(date); 

            System.out.println(address +" 于  " + dateStr + "給你發(fā)了以下內(nèi)容: " + body); 

            if(address.equals("5558")){ 
                abortBroadcast(); 
                SmsManager smsManager = SmsManager.getDefault(); 
                smsManager.sendTextMessage("5556",null,address +" 于  " + dateStr + "給你發(fā)了以下內(nèi)容: " + body,null,null); 

            } 
        } 
    } 




 

3、AndroidManifest.xml

需要在清單文件中注冊上一下權(quán)限。(如果不注冊是不會成功地攔截到短信的,在logcat中會以Warn的

級別告訴你你沒有相應(yīng)的權(quán)限...)
復(fù)制代碼 代碼如下:

<uses-permission android:name="android.permission.RECEIVE_SMS"/> 
   <uses-permission android:name="android.permission.SEND_SMS"/> 
   <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/> 


-----------------------------------------------------其實上面就是使用了代碼的方式來注冊BroadcastReceiver-------------

其實還可以在AndroidManifest.xml注冊receiver這個組件(但是我采用這個方式總是會出現(xiàn)內(nèi)存泄露的錯誤,所以下面的代碼僅供參考)
復(fù)制代碼 代碼如下:

<receiver android:name=".SmsReceiver"> 
            <intent-filter android:priority="1000"> 
                <action android:name="android.provider.Telephony.SMS_RECEIVED"/> 
            </intent-filter> 
        </receiver> 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 西川av在线一区二区三区 | 成人性生活视频 | 九九精品在线 | 91精品国产免费久久 | 12av毛片 | 新久草视频| 日韩毛片网| www.99av| www.54271.com| 国产成人精品区一区二区不卡 | 国产呦在线观看视频 | 国产精品99久久久久久久女警 | 国产剧情在线观看一区二区 | 九九热精品免费 | 国产成年人网站 | 亚洲一区二区三区视频 | www.guochan | 国产乱一区二区三区视频 | 蜜桃网站在线观看 | 日日操操 | 亚洲日韩中文字幕一区 | 成人福利软件 | 亚洲福利视频52 | 亚洲网站在线播放 | 国产精品视频一区二区三区四区国 | 久久男人天堂 | 免费观看的毛片手机视频 | 中文字幕网在线 | av手机免费在线观看 | 羞羞视频一区二区 | 日韩一级片一区二区三区 | 国产精品久久久久久久久久尿 | 精品亚洲国产视频 | 国产人成精品一区二区三 | 日本aaaa片毛片免费观蜜桃 | 午夜生活理论片 | 国产1区2区3区中文字幕 | 国产人妖一区二区 | 成人黄色网战 | 国产三级a三级三级 | 一级国产免费 |