@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i = 0; i < msgs.length; i++) {
msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
if (msgs[i].getOriginatingAddress().equals(
SmsModuleActivity.number))
deleteMessage(context, msgs[i]);
}
}
}
private void deleteMessage(Context context, SmsMessage msg) {
Uri deleteUri = Uri.parse("content://sms/inbox/");
Cursor c = context.getContentResolver().query(deleteUri, null, null,
null, null);
while (c.moveToNext()) {
try {
String pid = c.getString(0);
String uri = "content://sms/inbox/" + pid;
ContentValues values = new ContentValues();
values.put("read", true);
context.getContentResolver().update(Uri.parse(uri), values,
null, null);
context.getContentResolver().delete(Uri.parse(uri), null, null);
} catch (Exception e) {
e.printStackTrace();
}
}
新的传入短信未删除。当我从这个号码中得到短信时,它只从这个发送者那里删除旧的短消息,但是没有新的消息。我需要从具体的数字(见的源代码。)删除新的输入消息删除传入的短信
不,我需要删除新的传入短信但它不会删除它从这个数字中只删除旧短信。 – user1021984
在第一篇文章中有一些效果。 – user1021984