如何使用Android阅读联系电话号码
问题描述:
我想使用Android阅读电话号码和姓名。我使用了下面的代码。它只能读取手机名称。我如何阅读电话号码。我在Android中很新。任何一个人都可以。如何使用Android阅读联系电话号码
ContentResolver cr = getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
if (cur.getCount() > 0)
{
while (cur.moveToNext())
{
String id = cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID));
String name = cur.getString( cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
if (Integer.parseInt(cur.getString(cur.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0)
{
Cursor pCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = ?", new String[]{id}, null);
while (pCur.moveToNext())
{
String lnumber = cur.getString(cur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
pCur.close();
}
}
在此先感谢。
答
对不起,我错了代码中的东西。它的工作现在。 该代码将是:
而(pCur.moveToNext())
{
字符串L-NAME = pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}}
答
使用一种简单的方法来阅读显示的姓名和电话号码下面的代码...!
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));
String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
phones.close();
谢谢....!
此代码看起来相当低效。你究竟想读什么?只是所有联系人的电话号码,没有其他详细信息? – 2010-07-27 11:33:30