Я использую старый API Contacts для выбора контакта с номером телефона. Я хочу использовать более новый API ContactsContracts. Я хочу...
КонтактыКонтакты очень сложны. Я нашел много примеров, но ни один не подходит для моих нужд. Я не хочу выбирать контакт, а затем запрашивать его данные, потому что это даст мне список его телефонных номеров. Мне нужно, чтобы пользователь выбрал ОДИН из телефонных номеров контакта. Я не хочу писать собственные диалоги для отображения контактов или для того, чтобы пользователь выбрал номер телефона. Есть ли простой способ получить то, что я хочу?
Вот старый код API, который я использую:
static public final int CONTACT = 0;
...
Intent intent = new Intent(Intent.ACTION_PICK, Contacts.Phones.CONTENT_URI);
startActivityForResult(intent, CONTACT);
...
public void onActivityResult (int requestCode, int resultCode, Intent intent) {
if (resultCode != Activity.RESULT_OK || requestCode != CONTACT) return;
Cursor c = managedQuery(intent.getData(), null, null, null, null);
if (c.moveToFirst()) {
String phone = c.getString(c.getColumnIndexOrThrow(Contacts.Phones.NUMBER));
// yay
}
}