这里实现的功能是一个短信窃听器的功能,请勿乱加使用。这里不提倡使用窃听技术。只是作为技术的交流。

短信窃听器并不需要进行界面的设计。只需要接收系统的短信广播出来的内容。

以下是实现的源码:

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>

因为考虑到代码实现起来比较简单,这里不加以太多解释。

这里并没有实现窃听后的实现功能能,有兴趣的人可以自己写写。把收到的内容发送到自己的服务台。

更多相关文章

  1. Android 短信链接打开APP
  2. Android新手上路----用短信自动回复来电
  3. 向虚拟机发短信(android SMS 调试)
  4. 【Android】动态注册广播接收器
  5. Android存在程序缺陷误发短信 Google形象受损
  6. Android 监听短信内容变化,并发送到自己的手机
  7. Android之短信监听与内容获取

随机推荐

  1. Eclipse中使用Ant打Android包报错解决方
  2. android平台的几个编译命令----make,mmm,
  3. Android:背景渐变色
  4. 【Android(BLE)】Android(BLE)之蓝牙权限
  5. 关于Android(安卓)Studio打包混淆以及上
  6. [学习笔记] Android群英传:Android系统信
  7. android第二行代码总结:二、UI
  8. 【Android】精通Android UI设计
  9. Android(安卓)最火快速开发框架androidan
  10. 获取Android(安卓)SDK 源代码并在Eclipse