0
當短信發送給我。在BroatcastReceiver的的onReceive,我調用方法readNewSMS():不會收到新短信
private MySMS readNewSMS(String phoneNumber) {
MySMS sms = new MySMS();
Uri uri = Uri.parse("content://sms/inbox");
Cursor cursor = getSherlockActivity().managedQuery(uri, null,
null, null, null);
cursor.moveToFirst();
sms.setNumber(cursor.getString(
cursor.getColumnIndexOrThrow("address")).toString());
sms.setId(cursor.getString(
cursor.getColumnIndexOrThrow("_id")).toString());
sms.setThread_id(cursor.getString(cursor
.getColumnIndexOrThrow("thread_id")));
sms.setBody(cursor.getString(
cursor.getColumnIndexOrThrow("body")).toString());
sms.setTime(cursor.getString(
cursor.getColumnIndexOrThrow("date")).toString());
sms.setType(cursor.getString(
cursor.getColumnIndexOrThrow("type")).toString());
return sms;
}
但它返回的新短信的短信以前,沒有新的短信。如何解決這個錯誤?
這事我知道。但我需要**它的ID **以便我可以從我的列表短信中刪除它。 – Ken
在這種情況下,廣播操作不是您要查找的內容。按照此問題中的描述嘗試使用ContentObserver進行SMS:http://stackoverflow.com/questions/11281533/contentobserver-used-for-sms – Muzikant