设为首页 加入收藏

TOP

Android拦截短信并删除该条短信
2014-11-24 03:17:18 来源: 作者: 【 】 浏览:1
Tags:Android 拦截 短信 删除 该条

package com.zte.android.greenweb.launcher.service;


import org.json.JSONException;
import org.json.JSONObject;


import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.telephony.SmsMessage;


public class InterceptSmsReciever extends BroadcastReceiver
{


// 广播消息类型
public static final String SMS_RECEIVED_ACTION =
"android.provider.Telephony.SMS_RECEIVED";


@Override
public void onReceive(Context context, Intent intent)
{
String msgContent = "";
String functiontype = "";
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]);
msgContent = smsMessage[n].getMessageBody();
try
{
JSONObject json = new JSONObject(msgContent);
functiontype = json.getString("functiontype");
if (functiontype.equalsIgnoreCase("TimelyManage"))//
{
String opennet = json.getString("actiontype");
Intent in = new Intent();
in.putExtra("OpenNet", opennet);
context.sendBroadcast(intent);
deleteSMS(context, msgContent);
this.abortBroadcast();
}
}
catch (JSONException e)
{
e.printStackTrace();
}
}
}


public void deleteSMS(Context context, String smscontent)
{
try
{
// 准备系统短信收信箱的uri地址
Uri uri = Uri.parse("content://sms/inbox");// 收信箱
// 查询收信箱里所有的短信
Cursor isRead =
context.getContentResolver().query(uri, null, "read=" + 0,
null, null);
while (isRead.moveToNext())
{
// String phone =
// isRead.getString(isRead.getColumnIndex("address")).trim();//获取发信人
String body =
isRead.getString(isRead.getColumnIndex("body")).trim();// 获取信息内容
if (body.equals(smscontent))
{
int id = isRead.getInt(isRead.getColumnIndex("_id"));


context.getContentResolver().delete(
Uri.parse("content://sms"), "_id=" + id, null);
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}





android:name="com.zte.android.greenweb.launcher.service.InterceptSmsReciever"
android:exported="true" >






权限:





】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux驱动开发-----内存存取 下一篇Android仿QQ空间底部菜单

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)
·索引堆及其优化 - 菜 (2025-12-24 20:18:50)
·Shell 中各种括号的 (2025-12-24 19:50:39)
·Shell 变量 - 菜鸟教 (2025-12-24 19:50:37)