Android-如何删除已发送项目中的特定邮件或使用以下代码时不显示已发送邮件..?

时间:2016-09-28 08:56:09

标签: android android-intent smsmanager

这是我发送邮件的示例代码我想使用不在已发送邮件中显示此邮件。

    String strPhone = "XXXXXXXXXXX";

String strMessage = "Lorem\nIpsum";

SmsManager sms = SmsManager.getDefault();

sms.sendTextMessage(strPhone, null, strMessage, null, null);

Toast.makeText(this, "Sent.", Toast.LENGTH_SHORT).show();

我想从已发送的项目中删除此已发送的邮件,或者现在显示在已发送的项目中。 在所有版本中。 请帮我解决。

1 个答案:

答案 0 :(得分:0)

发送邮件后查询您的对话。然后通过使用您发送的消息中的任何唯一关键字比较消息内容来获取该特定消息。我在运行Marshmallow的手机中尝试了此代码。

    Uri uriSMS = Uri.parse("content://sms/conversations");
    Cursor cur = getContentResolver().query(uriSMS, null, null, null, null);
    if(cur != null && cur.moveToNext()) {
       do {
            String smsContent = cur.getString(2);
            if(smsContent.contains("your sms keyword")) {
                String pid = cur.getString(0); // Get id;
                String uri = "content://sms/" + pid;
                getContentResolver().delete(Uri.parse(uri), null, null);
            }
       } while (cur.moveToNext());
    }