首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取未读短信数量

获取未读短信数量
EN

Stack Overflow用户
提问于 2010-09-15 22:38:01
回答 2查看 10.5K关注 0票数 17

如何获取android中未读短信的数量?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-16 18:00:12

需要执行一个简单的短信ContentProvider查询。下面是一个有效的示例:

代码语言:javascript
复制
final Uri SMS_INBOX = Uri.parse("content://sms/inbox");

Cursor c = getContentResolver().query(SMS_INBOX, null, "read = 0", null, null);
int unreadMessagesCount = c.getCount();
c.deactivate();

您还需要READ_SMS权限:

代码语言:javascript
复制
<uses-permission android:name="android.permission.READ_SMS" />

请记住,SMS内容提供程序实际上并不是SDK的一部分,并且不能保证此代码在所有过去、现在和将来的设备上都能工作。

票数 41
EN

Stack Overflow用户

发布于 2013-08-11 02:56:50

我发现的最简单的方法是:

代码语言:javascript
复制
Cursor c = getContentResolver().query(
    Uri.parse("content://sms/inbox"),
    new String[] {
        "count(_id)",
    },
    "read = 0",
    null,
    null
);
c.moveToFirst();
int unreadMessagesCount = c.getInt(0);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3718687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档