在Android上将短信标记为已读不起作用
我试图在三星Galaxy S6上将消息标记为已读,但它不起作用。我有以下在线教程。我的代码如下:在Android上将短信标记为已读不起作用,android,sms,Android,Sms,我试图在三星Galaxy S6上将消息标记为已读,但它不起作用。我有以下在线教程。我的代码如下: Uri uri = Uri.parse("content://sms/inbox"); Cursor cursor = context.getContentResolver().query(uri, null, "_id=" + id, null, null); try { if (cursor.getCount() != 0) { ContentValues values
Uri uri = Uri.parse("content://sms/inbox");
Cursor cursor = context.getContentResolver().query(uri, null, "_id=" + id, null, null);
try {
if (cursor.getCount() != 0) {
ContentValues values = new ContentValues();
values.put("read", true);
context.getContentResolver().update(uri, values, "_id=?", new String[] { id });
}
} catch (Exception e) {
Log.e("Mark Read", "Error in Read: " + e.toString());
} finally {
cursor.close();
}
我做错什么了吗?我将
id
传递给此方法,消息始终标记为未读。为什么其他SMS应用程序可以标记为已读而我不能?如果您不是默认的SMS客户端,则无法将SMS消息标记为已读。瘸子 如果您不是默认的SMS客户端,则无法将SMS消息标记为已读。瘸子 您确定id
正确吗?如果getCount()
返回0,则不会更新任何内容。您确定id
正确吗?如果getCount()
返回0,则不会更新任何内容。如果要否决投票,请至少解释一下原因?这是一个合理的问题,因为很多人不知道只有默认应用程序才能修改内容。如果你要否决投票,至少解释一下为什么?这是一个有效的问题,因为许多人不知道只有默认应用程序才能修改内容。