我正在尝试在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
答案 0 :(得分:3)
您要求列数:
cursor.getColumnCount()
这与你想要的完全不同:
cursor.getCount()
getCount()
返回Cursor中的行数,或者在这种情况下返回收件箱中的邮件数。
getColumnCount()
返回每行中的列数;如id,发件人,消息,时间等。请在此处阅读第二个答案:How many database columns associated with a SMS in android?