• android 短信拦截


    android 4+版本需要用户主动添加broadReceiver

    1.清单文件

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.smslistener"
        android:versionCode="1"
        android:versionName="1.0" >
    
        <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="17" />
        <uses-permission android:name="android.permission.RECEIVE_SMS"/>
     
    
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            
            
            <receiver android:name=".SmsReceiver">
                <!-- priority 优先级      最高:1000  最低 : -1000 -->
                <intent-filter  android:priority="1000">
                    <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
                </intent-filter>
            </receiver>
            
        </application>
    
    </manifest>

    2.mainActivity

    package com.example.smslistener;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    public class MainActivity extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            
            super.onCreate(savedInstanceState);
            finish();
        }
    }

    4.SmsReceicer

    package com.example.smslistener;
    
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.telephony.SmsMessage;
    
    
    public class SmsReceiver extends BroadcastReceiver {
    
        @Override
        public void onReceive(Context context, Intent intent) {
            
            System.out.println("短信来了...");
            
            //获取短信
            Object[] pdus = (Object[])intent.getExtras().get("pdus");
            
            for(Object pdu:pdus)
            {
                SmsMessage sms = SmsMessage.createFromPdu((byte[])pdu);
                String body = sms.getMessageBody();
                String address = sms.getOriginatingAddress();
                System.out.println("body:"+body);
                System.out.println("address:"+address);
                
                if("4444".equals(address))
                {
                    //拦截短信
                    abortBroadcast();
                    
                }
                
            }
            
        }
    
    }
  • 相关阅读:
    [转] HP大中华区总裁孙振耀退休感言
    [转] 在win下使用tagList插件
    [转] vim使用技巧如何把所编辑文件的编码方式改为utf8
    vim中文用户手册
    [转] vim使用技巧如何把所编辑文件的编码方式改为utf8
    OSCP Learning Notes Enumeration(3)
    OSCP Learning Notes Scanning(1)
    Burp Suite Report 报告功能
    OSCP Learning Notes Scanning(2)
    OSCP Learning Notes Information Gathering
  • 原文地址:https://www.cnblogs.com/zoro-zero/p/3965287.html
Copyright © 2020-2023  润新知