Android 收到短信后立即删除
我有一些代码可以通过编程删除Android短信,但当我尝试在onReceive中删除它时,不会删除任何短信 删除短信的示例代码Android 收到短信后立即删除,android,sms,Android,Sms,我有一些代码可以通过编程删除Android短信,但当我尝试在onReceive中删除它时,不会删除任何短信 删除短信的示例代码 try { // mLogger.logInfo("Deleting SMS from inbox"); Uri uriSms = Uri.parse("content://sms/inbox"); Cursor c = context.getContentResolver().query( uriSms, new String[
try {
// mLogger.logInfo("Deleting SMS from inbox");
Uri uriSms = Uri.parse("content://sms/inbox");
Cursor c = context.getContentResolver().query(
uriSms, new String[] { "_id", "thread_id", "address", "person",
"date", "body" }, null, null, null);
if (c != null && c.moveToFirst()) {
do {
long id = c.getLong(0);
long threadId = c.getLong(1);
String address = c.getString(2);
String body = c.getString(5);
if (message.equals(body) && address.equals(number)) {
// mLogger.logInfo("Deleting SMS with id: " + threadId);
context.getContentResolver().delete(Uri.parse("content://sms/" + id), null, null);
}
} while (c.moveToNext());
}
} catch (Exception e) {
// mLogger.logError("Could not delete SMS from inbox: " +
// e.getMessage());
}
当我将其粘贴到
onReceived
中时,新的SMS不会被删除。您需要向清单文件添加权限,并增加SMS Receiver类的优先级
<receiver android:name=".SMSReceiver" >
<intent-filter android:priority="1000">
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
就这些
干杯
Ayush Shah您必须使用
Smsid
删除sms
getContentResolver().delete(Uri.parse("content://sms/" + smsid), null, null);
是否有任何解决方案???@user2229896接受答案,以便将其从stackoverflow上的未答复列表中删除。
getContentResolver().delete(Uri.parse("content://sms/" + smsid), null, null);