簡體   English   中英

如何在Android上將所有短信標記為已讀?

[英]How to mark all text messages as read on Android?

我試圖在用戶打開收件箱時將所有短信標記為已讀。 我從網上的一些教程中整理了代碼,最終得到了以下結果:

 Uri uri = Uri.parse("content://sms/inbox");
     Cursor cursor = getContentResolver().query(uri, null, null, null, null);
    while (cursor.moveToNext()) {
        if ((cursor.getInt(cursor.getColumnIndex("read")) == 0)) {
                String SmsMessageId = cursor.getString(cursor.getColumnIndex("_id"));
                ContentValues values = new ContentValues();
                values.put("read", true);
                getContentResolver().update(Uri.parse("content://sms/inbox"), values, "read=0", null);
            }

我只想在此活動的onResume()函數中將所有文本消息標記為已讀。 我的代碼可能是一堆廢話,就像我說的是從幾個地方混在一起的。 我的代碼的更正或替代,將不勝感激。 使用5.1的sdk編譯代碼,在4.4上進行測試,我的應用程序是默認的SMS應用程序。

如果要將所有郵件標記為已讀,則可以一次性完成。

ContentValues values = new ContentValues();
values.put(Telephony.Sms.READ, 1);
getContentResolver().update(Telephony.Sms.Inbox.CONTENT_URI, 
    values, Telephony.Sms.READ + "=0", null);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM