【问题标题】:The return value of update query is 0更新查询的返回值为0
【发布时间】:2015-09-30 05:50:44
【问题描述】:

我想将一条短信标记为已读。我有那个短信的 id。我尝试使用以下代码将此短信标记为已读。

public void setRead(int position, String smsMessageId) {

        ContentValues values = new ContentValues();
        values.put("read",true);
        int flag = context.getContentResolver().update(Uri.parse("content://sms/inbox"),
                values, "_id=" + smsMessageId, null);
        Toast.makeText(context, "The result is "+flag, Toast.LENGTH_LONG).show();  
}

但是返回结果是 0 。为什么返回结果是 0 ?

【问题讨论】:

  • 你在尝试哪个操作系统版本?
  • 我正在 Android 4.4.2 中尝试
  • 您是否确认您实际上定位到了正确的 messageId?
  • 是的。我实际上是针对正确的 messageID 。
  • 日志是否显示更新正常或被拒绝?

标签: android sms


【解决方案1】:

我的应用程序未设置为默认值。这就是为什么,返回结果是0。如果应用程序设置为默认,那么返回结果是1。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-08
    • 2021-05-15
    • 1970-01-01
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-13
    相关资源
    最近更新 更多