0
点赞
收藏
分享

微信扫一扫

如何获取一个联系人下的多个号码

时光已翩然轻擦 2022-08-04 阅读 49
编程语言


// 获得多个号码
public ListAdapter getMoreContacts(String name) {

contactIdCur = null;
if (name == null || name.equals("") || name.length() == 0) {

// query
contactIdCur = getContentResolver()
.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
new String[] {
ContactsContract.CommonDataKinds.Phone.CONTACT_ID,
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME },
null, null, null, null);
}// if
else {
// condition query
contactIdCur = getContentResolver()
.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
new String[] {
ContactsContract.CommonDataKinds.Phone.CONTACT_ID,
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME },
Contacts.DISPLAY_NAME + " LIKE ? and "
+ Contacts.HAS_PHONE_NUMBER + " = 1",
new String[] { "%" + name + "%" },
Contacts.DISPLAY_NAME, null);

}

contactsData = new ArrayList<Contract>();
if (contactIdCur != null) {
while (contactIdCur.moveToNext()) {

contract = new Contract();
// get data
contract.setName(contactIdCur.getString(contactIdCur
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)));
long contactid = contactIdCur
.getLong(contactIdCur
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.CONTACT_ID));

// query numbers by ID
Cursor numbers = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "="
+ contactid, null, null);
phones = new ArrayList<String>();
while (numbers.moveToNext()) {
// get data
phones.add(numbers.getString(numbers
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)));
}
contract.setPhones(phones);
contactsData.add(contract);
}
}

contactIdCur.close();
ContractAdapter contractAdp = new ContractAdapter(ContactActivity.this,
R.layout.contacts_list_row, contactsData);

return contractAdp;

}

 

举报

相关推荐

0 条评论