我正在尝试在android中获取所有短信(包括收件箱,发送短信)。 我试过这些
Uri uri_sent = Uri.parse("content://sms");
Cursor c_sent = getContentResolver().query(uri_sent, null, null, null,
null);
startManagingCursor(c_sent);
// Read the inbox sms data and store it in the list
if (c_sent.moveToFirst()) {
for (int i = 0; i < c_sent.getCount(); i++) {
SmsDataClass sms = new SmsDataClass();
sms.setAddress(c_sent.getString(
c_sent.getColumnIndexOrThrow("address")).toString());
sms.setBody(c_sent.getString(
c_sent.getColumnIndexOrThrow("body")).toString());
sms.setDate(c_sent.getString(
c_sent.getColumnIndexOrThrow("date")).toString());
sms.set_id(c_sent
.getString(c_sent.getColumnIndexOrThrow("_id"))
.toString());
sms.setType(c_sent.getString(
c_sent.getColumnIndexOrThrow("type")).toString());
// sms.setTitle(c.getString(c.getColumnIndexOrThrow("title")).toString());
all_sms_data.add(sms);
c_sent.moveToNext();
}
} else
c_sent.close();
它有时会起作用,但它不能定期工作。有时它会在c_sent.getColumnIndexOrThrow("address"),c_sent.getColumnIndexOrThrow("body") ...
上显示空指针异常。
有什么问题? 我不明白 在oneday之前,当今天我有nullpointer异常时它工作正常。 为什么???