<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-348  評論-598  文章-0  trackbacks-0
    經過測試,Android中是可以攔截短信的,解決方案如下:
    package com.tigertian.sms;

    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.os.Bundle;
    import android.telephony.SmsMessage;

    public class SMSReceiver extends BroadcastReceiver {

        @Override
        
    public void onReceive(Context context, Intent intent) {
            
    // TODO Auto-generated method stub
            System.out.println("SMSReceiver, isOrderedBroadcast()="
                    
    + isOrderedBroadcast());
            
            Bundle bundle 
    = intent.getExtras();
            Object messages[] 
    = (Object[]) bundle.get("pdus");
            SmsMessage smsMessage[] 
    = new SmsMessage[messages.length];
            
    for (int n = 0; n < messages.length; n++) {
                smsMessage[n] 
    = SmsMessage.createFromPdu((byte[]) messages[n]);
                
    if(smsMessage[n].getMessageBody().contains("hahaha")){
                    
    this.abortBroadcast();
                }
                System.out.println(smsMessage[n].getOriginatingAddress()
    +" "+smsMessage[n].getMessageBody()+" "+smsMessage[n].getIndexOnIcc());
            }
        }

    }

            <receiver android:name=".SMSReceiver">
                
    <intent-filter android:priority="10000">
                    
    <action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
                    
    <category android:name="android.intent.category.DEFAULT" />
                
    </intent-filter>
            
    </receiver>
    上面的代碼是一個消息監聽,監聽接收短信的消息。我們可以從控制臺打印信息里面看到,他是一個OrderedBroadcast,根據這一點我們就可以對短信機制進行攔截。如何攔截呢?

    首先要聲明一個消息監聽器,同時根據上面的配置文件需要在AndroidManifest.xml中配置好,注意它的優先級是10000,這一點很關鍵,因為OrderedBroadcast是根據優先級來傳遞消息的,優先級越高越先獲取到消息,待處理完后才會傳遞給下一個監聽器,如果當前監聽器退出廣播,那么后面的所有監聽器都將無法收到消息。

    其次我們需要實現onReceive方法,根據上面的代碼,我們可以從bundle中拿到短信內容并還原成SmsMessage,這樣我們可以根據特定條件來判斷哪些是需要我們攔截并且不要讓用戶知道的,哪些是我們可以放行的。需要我們攔截的短信,我們可以在收到后直接abortBroadcast()(上面的代碼中是判斷當短信內容包含hahaha的時候直接攔截),這樣系統收件箱將無法接收到該條短信,繼而也就不會有notification去通知用戶。

    至此,應用編寫好之后,短信攔截功能就完成了,當然基于此還可以做一些其他功能,這方面就看需求了。注意,優先級相同,則根據包名依次傳遞廣播。

    想刪除收件箱中已存在的短信,請參考Android源碼SmsProvider類,可以在你的應用中使用ContentProvider機制進行操作。

    ---------------------------------------------------------
    專注移動開發

    Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
    posted on 2011-01-23 15:52 TiGERTiAN 閱讀(31086) 評論(12)  編輯  收藏 所屬分類: Android

    評論:
    # re: Android中短信攔截解決方案[未登錄] 2011-12-27 13:41 | Alex
    你好,我按你的方法不能攔截短信啊。仍然有短信通知。  回復  更多評論
      
    # re: Android中短信攔截解決方案[未登錄] 2012-05-26 16:53 | 小羅
    可以比360,安全衛士先攔截嗎?或者是否可以不然它們兩個攔截?  回復  更多評論
      
    # re: Android中短信攔截解決方案 2012-06-18 12:08 | 袁良鋒
    但是有些還是無法攔截,比如小米下,短信會被其系統自帶的短信系統攔截到,有解決方法,求賜教!  回復  更多評論
      
    # re: Android中短信攔截解決方案[未登錄] 2013-01-22 19:35 | Jessica
    請問你在小米下短信攔截的問題解決了嗎?請賜教~~~~@袁良鋒
      回復  更多評論
      
    # re: Android中短信攔截解決方案 2013-08-07 10:43 | xpiou
    小米的短信設置里有一個“系統短信優先”的選項  回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-02-06 11:37 | draem0507
    @xpiou
    正解
      回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-03-04 20:57 | lincoln
    試了,可是沒有用。@xpiou
      回復  更多評論
      
    # re: Android中短信攔截解決方案[未登錄] 2014-08-07 15:44 | 默默
    正解~@xpiou
      回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-10-13 00:04 | Super169
    @xpiou
    有測試過嗎? 還是小米改了?
    關閉 "統短信優先" 只能令 BroadcastReceiver 可以接收到短訊, 但 abortBroadcast() 依然無效.  回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-11-17 19:21 | sfd
    @Alex
    手機短信攔截,安卓手機4.4短 信攔截,手機驗證碼攔截 手機驗證碼馬子軟件 手機信息攔截 支付寶驗證碼攔截 信用卡驗證碼攔截軟件 免殺全部包過 安卓手機全部通殺,過360 小米安全小心,QQ管家,百度衛士 全部過 攔截成功高有意加扣.1.0.7.2.9.9.8.5.6.6.  回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-11-17 19:21 | sfd
    手機短信攔截,安卓手機4.4短 信攔截,手機驗證碼攔截 手機驗證碼馬子軟件 手機信息攔截 支付寶驗證碼攔截 信用卡驗證碼攔截軟件 免殺全部包過 安卓手機全部通殺,過360 小米安全小心,QQ管家,百度衛士 全部過 攔截成功高有意加扣.1.0.7.2.9.9.8.5.6.6.  回復  更多評論
      
    # re: Android中短信攔截解決方案 2014-12-30 20:16 | 求項目
    有玩攔截的,可以加我扣扣2417650900,需要找一個好軟件,求帶  回復  更多評論
      
    主站蜘蛛池模板: 国产成人自产拍免费视频| 一级视频免费观看| 91免费在线播放| 亚洲一区二区中文| 在线观看免费av网站| 7777久久亚洲中文字幕蜜桃| 久久久久国色av免费看| 亚洲不卡av不卡一区二区| 精品在线免费观看| 91亚洲导航深夜福利| 精品一区二区三区无码免费视频| 亚洲国产日韩一区高清在线| 91精品国产免费| 亚洲国产电影在线观看| 久久精品免费全国观看国产| 中文字幕亚洲男人的天堂网络| 在线观看视频免费完整版| 亚洲日韩乱码中文字幕| 国产a不卡片精品免费观看 | 亚洲人AV永久一区二区三区久久 | 国内永久免费crm系统z在线| 国产亚洲综合久久系列| 99久久久国产精品免费牛牛四川| 亚洲午夜国产精品| 国产成人免费A在线视频| 精品无码国产污污污免费网站国产 | a级毛片免费高清毛片视频| 亚洲av伊人久久综合密臀性色| 精品无码国产污污污免费网站| 午夜在线a亚洲v天堂网2019| 免费国产a国产片高清| 日本高清不卡aⅴ免费网站| 亚洲综合网美国十次| 曰皮全部过程视频免费国产30分钟| 免费精品国产自产拍在线观看| 国产精品久久久亚洲| 一个人免费观看视频www| 男女啪啪免费体验区| 亚洲人成在线电影| 国产做床爱无遮挡免费视频| 成人免费一区二区三区|