2012-05-14 4 views
0

Это относится к списку с двумя текстовыми изображениями. В первом текстовом списке перечислены контакты, в то время как второе текстовое представление должно отображать количество сообщений в папке «Входящие» из уважаемого контакта (контактов).Могу ли я поместить содержимое моего входящего SMS в массив?

я смог подсчитать количество сообщений в почтовом ящике на моем устройстве разборе

String inbox = "content://sms/inbox" 

в строку. Но я хочу пойти глубже, чем просто получить единовременную сумму. можно ли глубже проникнуть в папку «Входящие» и отделить общее количество сообщений к их соответствующим контактам? Например, если у меня есть 3 контакта и единовременная сумма из 20 сообщений, контакт1 имеет 11 сообщений, контакт2 имеет 4 сообщения, а контакт3 - 6 сообщений.

ответ

0

Чтобы получить количество текстов в вашем почтовом ящике от каждого отправителя, вы можете использовать предложение SQL Group By. Это популярный трюк, чтобы проникнуть Группировать по статье в ContentProvider:

Cursor cursor = getContentResolver().query(
     Uri.parse("content://sms/inbox/"), 
     new String[] { "_id", "address", "count(*) as totals" }, 
     "1) Group By (address", 
     null, 
     null); 

Однако это не работает для Android 4.0+. (Для меня проектирование ContentProviders без предложения Group By похоже на изготовление клавиатуры без цифр ...). Для 4.0+ я предлагаю повторить регулярный курсор и самостоятельно отсортировать сообщения.

Смежные вопросы