0

我正在尝试在 android 中阅读短信。在我的清单文件中,我有:

<uses-permission android:name="android.permission.READ_SMS" />

我的代码:

Cursor cursor = getContentResolver().query(Uri.parse("content://mms-sms/inbox"), null, null, null,null);
((TextView) findViewById(R.id.info1)).setText("Number of messages: " + cursor.getColumnCount());

问题是我的收件箱中有超过 17 条短信,但它给出的输出是

消息数量:17

我看过这个这个这个这个。有人可以告诉问题是什么吗?

4

1 回答 1

3

您要求列数

cursor.getColumnCount()

这与您想要的非常不同:

cursor.getCount()

getCount()返回光标中的行数,或者在本例中为收件箱中的邮件数。

getColumnCount()返回每行的列数;比如 id、sender、message、time 等。在这里阅读第二个答案:Android 中与 SMS 关联的数据库列有多少?

于 2012-10-05T18:05:26.867 回答