如何从电话号码获取联系人姓名请帮助我

时间:2011-09-08 02:12:17

标签: android android-ndk

如何从phonenumber获取联系人姓名,请帮助我  使用的代码:

public String contactname(String phonenumber)
{
  ContentValues contentValues = new ContentValues();

      Uri contactUri = Uri.withAppendedPath(Contacts.Phones.CONTENT_FILTER_URL, 

            phonenumber);
Cursor cur = managedQuery(contactUri, null, null, null, null);
 int nameColumn = cur.getColumnIndex(People.NAME); 
String name = cur.getString(nameColumn);

return name;
}


It shows error

1 个答案:

答案 0 :(得分:0)

类型Contacts.People.Phones已弃用,我认为您应该直接使用Contacts,旁边,您设置的字符串phonenumber仅用于匹配联系人姓名的各个部分。 也许你可以先查询所有联系人,然后通过给出电话号码来匹配。

Uri uri = Contacts.CONTENT_URI;
Cursor cursor = managedQuery(uri, null, null, null, null);
cursor.moveToFirst();
String name = null;
while (curcor.getPosition != cursor.getCount) {
    if (cursor.getString(cursor.getColumnIndex("default_tel")).equals(phonenumber)) {
        name = cursor.getString(cursor.getColumnIndex(Contacts.DISPLAY_NAME));
        break;
    }
}
return name;