#android #sms #cursor
#Android #sms #курсор
Вопрос:
Я хочу получить сведения о SMS (номер, текстовое тело, время прихода); И я знаю только идентификатор sms. Могу ли я запросить «content: / / sms» с этим идентификатором и получить сведения?
На данный момент я могу создать цикл и запросить для каждого сообщения и получить детали. Но это неэффективно, когда вам нужно получать отдельные данные sms 10 раз из 1000 sms….. Надеюсь, вы понимаете проблему. Спасибо
Ответ №1:
Я разобрался сам, но мне потребовалось некоторое время, следующий код работает для меня:
Uri myMessage = Uri.parse("content://sms/");
ContentResolver cr = getContentResolver();
Cursor c = cr.query(myMessage, new String[] { "_id", "address", "date", "body","read" },"_id = " smsID, null, null);
c.moveToFirst();
String Number = c.getString(c.getColumnIndexOrThrow("address")).toString();
String ReadStatus = c.getString(c.getColumnIndex("read"));
String Body = c.getString(c.getColumnIndexOrThrow("body")).toString();
c.close();
Я пропустил условие и переместил курсор на первое. Надеюсь, кто-нибудь сможет найти это полезным.
Комментарии:
1. Фрархан, это поисковое SMS-сообщение с таким же идентификатором в базе данных?