private void appendLocalGroupContacts(ArrayList<String> numbers) { Cursor cursor = getContentResolver() .query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, PhoneNumber.PROJECTION, getContactsForCheckedGroupsSelectionQuery(), getContactsForCheckedGroupsSelectionArgs(), null); if (cursor != null) { while (cursor.moveToNext()) { PhoneNumber number = new PhoneNumber(cursor); numbers.add(number.getNumber()); } } if (cursor != null) { cursor.close(); } }
private void putExtraWithContact(Intent intent) { if (mMode == MODE_DEFAULT) { ArrayList<String> numbers = new ArrayList<String>(); for (PhoneNumber phoneNumber : mCheckedPhoneNumbers) { if (phoneNumber.isChecked()) { numbers.add(phoneNumber.getNumber()); } } // We have to append any local group contacts which may have been checked if (mLocalGroups.size() > 0) { appendLocalGroupContacts(numbers); } intent.putExtra(EXTRA_RECIPIENTS, numbers); } else if (mMode == MODE_INFO) { intent.putExtra(EXTRA_INFO, getCheckedNumbersAsText()); } else if (mMode == MODE_VCARD) { if (mVCardNumber != null) { intent.putExtra(EXTRA_VCARD, getSelectedAsVcard(mVCardNumber).toString()); } } }