Mam trochę kodu, aby programowo usunąć wiadomości SMS z Androidem, ale kiedy spróbuję usunąć to w onReceive, nie zostanie usunięty żaden SMS.Usuń sms android po otrzymaniu bez opóźnienia
Przykładowy kod, aby usunąć sms
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());
}
Kiedy wklej to w onReceived
to nowy SMS nie zostanie usunięty.
Czy istnieje jakieś rozwiązanie? –
@ user2229896 zaakceptuj odpowiedź, aby usunąć ją z listy bez odpowiedzi na stackoverflow. – Ayush