0
我使用了这段代码,当点击联系人时,我可以从联系人中获取号码。但是,某些联系人有多个电话号码。我怎样才能访问另一个手机号码。我已经尝试了一个星期,但它并没有提前如何获得电话号码,如果一个联系人在Android中有多个号码
这里是我的代码工作:( 感谢:
//Choose number from phone book setup
btnPhonebook.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent pb = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(pb, 1);
}
});
}
//Listen the result from phone book button
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//super.onActivityResult(requestCode, resultCode, data);
ContentResolver cr = getContentResolver();
if (resultCode == Activity.RESULT_OK) {
Uri contactData = data.getData();
Cursor contactCursor = managedQuery(contactData, null, null, null, null);
String cellNoFromPhonebook;
String phoneNumber = null;
if (contactCursor.moveToFirst()) {
cellNoFromPhonebook = contactCursor.getString(contactCursor.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));
Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null, null);
while (phones.moveToNext())
{
String name = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
if (name.compareTo(cellNoFromPhonebook) == 0) {
phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
}
phones.close();
etNumber.setText(phoneNumber);
}
}
}
没有解释去的代码? – 2012-10-05 08:28:15