Android 短信窃听器
这里实现的功能是一个短信窃听器的功能,请勿乱加使用。这里不提倡使用窃听技术。只是作为技术的交流。
短信窃听器并不需要进行界面的设计。只需要接收系统的短信广播出来的内容。
以下是实现的源码:
package com.example.smslistener;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.SmsMessage;
public class SMSBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Object[] pdus =(Object[]) intent.getExtras().get("pdus"); //得到关于短信的所有信息
for(Object p : pdus) {
byte[]pdu = (byte[]) p;
SmsMessage message = SmsMessage.createFromPdu(pdu);
String content = message.getMessageBody();
Date date = new Date(message.getTimestampMillis());
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String receivetime = format.format(date);
String senderNumber = message.getOriginatingAddress();
System.out.println(senderNumber+receivetime+content); //当系统收到一条短信,打印到控制台
}
}
}
AndroidManifest文件:
<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="7"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<receiver //注册过滤接收器
android:name=".SMSBroadcastReceiver">
<intent-filter >
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.SEND_SMS"/><!-- 发送短信权限 -->
<uses-permission android:name="android.permission.RECEIVE_SMS"/><!-- 接收短信权限 -->
</manifest>
代码比较简单,就是收到一条短信的时候,会在控制台打印出来。
需要注意代码:
<receiver //注册过滤接收器
android:name=".SMSBroadcastReceiver">
<intent-filter >
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>
因为考虑到代码实现起来比较简单,这里不加以太多解释。
这里并没有实现窃听后的实现功能能,有兴趣的人可以自己写写。把收到的内容发送到自己的服务台。
更多相关文章
- Android 短信链接打开APP
- Android新手上路----用短信自动回复来电
- 向虚拟机发短信(android SMS 调试)
- 【Android】动态注册广播接收器
- Android存在程序缺陷误发短信 Google形象受损
- Android 监听短信内容变化,并发送到自己的手机
- Android之短信监听与内容获取