【发布时间】:2014-04-09 19:36:45
【问题描述】:
我正在尝试从用户的收件箱中读取 SMS 消息,但我只得到号码,因为 cur.getString() 在索引为 2 之后总是返回 NULL 给我...
这是我的代码:
TextView view = (TextView)findViewById(R.id.textView1);
Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,null);
String sms = "";
while (cur.moveToNext())
{
sms += "From :" + cur.getString(2) + " : " + cur.getString(11)+"\n";
Log.i("MyApp", "A " + cur.getString(2) + " " + cur.getString(3));
}
view.setText(sms);
我查过了,cur.getString(3) 及以上,总是返回 null 给我...
我的错误是什么?
谢谢!
编辑:
感谢 simas,我看到包含消息数据的 body 字段是光标中的第 12 号字段(cur),而不是 11。因此将其从 11 更改为 12 修复了它。
谢谢西玛斯!
【问题讨论】:
-
添加一些日志以检查空值,然后发布您的 logcat 结果