我该如何收听消息读取事件

时间:2015-09-14 19:55:26

标签: android android-intent android-widget

我正在创建一个小部件,在其中我在图标上显示未读消息计数。我正在侦听传入的消息,我可以使用意图过滤器增加计数: “android.provider.Telephony.SMS_RECEIVED”

我还可以通过以下方式随时获取未读消息:

final Uri SMS_INBOX = Uri.parse("content://sms/inbox");
Cursor c = context.getContentResolver().query(SMS_INBOX, null, "read = 0", null, null);
int unreadMessagesCount = c.getCount();

但我不想定期调用该功能。代替 如果用户读取未读消息,我想减少我的小部件图标的计数。有没有办法为'消息读取事件'设置一个监听器,即用户是否打开了未读消息?

1 个答案:

答案 0 :(得分:0)

您可以使用 BroadcastReceiver 来解决问题。

请参考链接: http://javapapers.com/android/android-receive-sms-tutorial/