当前位置: 首页 > 知识库问答 >
问题:

将SMS消息标记为已读/未读或删除在KitKat中不起作用的消息

詹亮
2023-03-14
public static void markRead(final Context context, final Uri uri,
            final int read) {
        Log.d(TAG, "markRead(" + uri + "," + read + ")");
        if (uri == null) {
            return;
        }
        String[] sel = Message.SELECTION_UNREAD;
        if (read == 0) {
            sel = Message.SELECTION_READ;
        }
        final ContentResolver cr = context.getContentResolver();
        final ContentValues cv = new ContentValues();
        cv.put(Message.PROJECTION[Message.INDEX_READ], read);
        try {
            cr.update(uri, cv, Message.SELECTION_READ_UNREAD, sel);
        } catch (IllegalArgumentException e) {
            Log.e(TAG, "failed update", e);
            Toast.makeText(context, e.getMessage(), Toast.LENGTH_LONG).show();
        }
}
public static void deleteMessages(final Context context, final Uri uri,
            final int title, final int message, final Activity activity) {

        Log.i(TAG, "deleteMessages(..," + uri + " ,..)");
        final Builder builder = new Builder(context);
        builder.setTitle(title);
        builder.setMessage(message);
        builder.setNegativeButton(android.R.string.no, null);
        builder.setPositiveButton(android.R.string.yes,
                new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(final DialogInterface dialog,
                            final int which) {
                        final int ret = context.getContentResolver().delete(
                                uri, null, null);
                        Log.d(TAG, "deleted: " + ret);
                        if (activity != null && !activity.isFinishing()) {
                            activity.finish();
                        }
                        if (ret > 0) {
                            Conversation.flushCache();
                            Message.flushCache();
                            SmsReceiver.updateNewMessageNotification(context,
                                    null);
                            // adapter.notifyDataSetChanged();
                        }
                        try {
                            testFromFragment(context);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                });
        builder.show();
}

共有1个答案

公西宏毅
2023-03-14

在Android4.4中,短信有几个方面发生了变化。其中一个事实是,只有注册为默认SMS应用程序的应用程序才有对提供程序的写访问权。

在这里查看短信更改的简短说明。

查看此链接以获得更深入的查看。这篇文章解释了您的应用程序需要满足哪些标准才能成为默认的消息应用程序。

 类似资料:
  • 该未读消息接口记录不含在通知内的消息,如当前用户收到的评论、点赞和未处理的审核等,调用相应的列表和操作接口,讲自动清零 GET /user/unread-count Response Status: 200 OK { "counts": { "user_id": 1, "unread_comments_count": 0, "unread_likes_count":

  • 本文向大家介绍Android仿QQ滑动弹出菜单标记已读、未读消息,包括了Android仿QQ滑动弹出菜单标记已读、未读消息的使用技巧和注意事项,需要的朋友参考一下 在上一篇《Android仿微信滑动弹出编辑、删除菜单效果、增加下拉刷新功能》里,已经带着大家学习如何使用SwipeMenuListView这一开源库实现滑动列表弹出菜单,接下来,将进一步学习,如何为不同的list item呈现不同的菜单

  • 桌面端发送方式 单聊:在输入框中输入@ -> 勾选“要求对方回执消息”-> 输入消息发送 群聊:输入框输入@ -> 勾选“要求对方回执消息” -> 再勾选要提醒的成员 -> 输入消息发送 当对方如过阅读了消息,你会收到对方已读消息的反馈。 移动端发送方式 单聊:输入框右侧“+”入口,选择“回执”-> 输入消息发送 群聊:输入框输入@ -> 开启“回执”开关 -> 再勾选要提醒的成员 -> 输入消息

  • 1.未读消息的监听 未读消息的监听用于提示访客有未读消息,用户可以在咨询入口处添加消息数小红点时使用; (新接口)未读消息的监听接口为OnUnreadNMsgListener;使用新接口的不用再使用下面的老接口。 注册监听方法:NSDKMsgUtils.getInstance().setOnUnreadNMsgListener(OnUnreadNMsgListener onUnreadNmsgLi

  • 我最近将一台服务器从ActiveMQ从5.8升级到了最新版本(5.11.1)。从那以后,我偶尔注意到,消息将在特定队列中累积,而不会被删除。 我们的架构有一个生产者,一个消费者。我可以看到消费者仍然保持联系,但制作人的信息越来越多。我的解决方案是通过web控制台删除队列。之后,我立即看到消费者重新连接,消息再次开始处理。 如果相关,在这种情况下,生产者正在运行NMS。NET和消费者在Java 1.

  • 我刚开始学Kafka,Kafka-蟒蛇。在下面的代码中,我试图在消息到达时读取它们。但出于某种原因,消费者似乎要等到一定数量的消息积累后才能获取它们。 我最初以为是因为正在批量出版的制片人。当我运行“kafka-console-consumer--bootstrap-servers--topic”时,我可以看到发布后收到的每一条消息(就像在consumer控制台上看到的那样) 有人能指出用KafK