@AndreyOstapov

Как получить номер телефона из списка контактов?

Подскажите пожалуйста, как получить номер по имени пользователя из списка контактов. Я реализовал интент:

final Intent pickContact = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
mSuspectButton = v.findViewById(R.id.crime_suspect);
mSuspectButton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivityForResult(pickContact, REQUEST_CONTACT);
    }
});


Потом получаю имя пользователя:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_DATE && resultCode == Activity.RESULT_OK){
        Date date = (Date) data.getSerializableExtra(DatePickerFragment.getExtraDate());
        mCrime.setDate(date);
        updateDate(mCrime.getDateString());
    }else if (requestCode == REQUEST_CONTACT && data != null){
        Uri contactUri = data.getData();
        //определение полей, значения которых должны быть возвращены запросом
        String[] queryFields = new String[] {Contacts.DISPLAY_NAME};
        try (Cursor cursor = getActivity().getContentResolver().query(contactUri, queryFields, null, null, null)) {
            if (cursor.getCount() == 0) {
                return;
            }
            cursor.moveToFirst();
            String suspect = cursor.getString(0);
            mCrime.setSuspect(suspect);
            mSuspectButton.setText(suspect);
        }

    }
}


И теперь мне нужно получить номер телефона этого пользователя и записать его в отдельную переменную. Новичек и как эту задачу реализовать не пойму. Заранее благодарен за помощь.
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы