Подбор контактов Android - только контакты с номерами? - PullRequest
5 голосов
/ 30 июня 2010

Я пишу приложение, которое требует от пользователя выбрать контакт из списка контактов, чтобы отправить SMS на этот контакт.Можно ли каким-либо образом запросить список контактов только для тех контактов, у которых есть номер телефона (т.е. не те, у которых есть только адреса электронной почты)?В настоящее время мой код выглядит следующим образом, но он показывает все контакты - мне нужно выполнить логику в своей деятельности, чтобы проинформировать пользователя, если он выбрал контакт без связанного номера, и предложить ему выбрать другой.

Intent i = new Intent(Intent.ACTION_PICK, People.CONTENT_URI);

Во-вторых, я понимаю, что API контактов изменился с 2.0 и далее, так как лучше всего выбирать контакты для всех версий ОС Android?Правильно ли я считаю, что новый API контактов не относится к версии до 2.0?

Ответы [ 2 ]

5 голосов
/ 08 июля 2010
Intent intent = new Intent(Intent.ACTION_PICK, Contacts.Phones.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT_RQCODE_OLD);

Показывает номера телефонов, а также контакты ...:)

0 голосов
/ 14 июня 2011

В итоге я посмотрел пример кода на Android Developer и обнаружил этот проект, который определяет версию Android и использует другой класс для доступа к номерам в зависимости от версии Android.

http://developer.android.com/resources/samples/BusinessCard/src/com/example/android/businesscard/index.html

...