如何通过匹配联系人姓名获取联系号码

时间:2013-12-14 12:34:17

标签: android android-contacts

我希望通过联系人姓名获取联系电话号码我正在创建Android应用程序,用户只需输入联系人姓名即可自动从联系人列表中获取号码

例如,当我在联系人姓名中输入姓名时,我有2个文本框联系人姓名和联系人号码,如果找到匹配项,则会自动匹配联系人列表中的姓名,并在联系人号码中显示其号码。

我怎样才能在ANDROID中帮助我。

2 个答案:

答案 0 :(得分:1)

在EditText1中输入name作为输入,并在click事件上调用getb(name,MainActivity.this)。你会得到你的答案。在android manifest.xml文件中。添加

<uses-permission android:name="android.permission.READ_CONTACTS" />
enter code here

public String getb(String name, Context context) {
    String ret = null;
    String selection = ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME+" like'%" + name +"%'";
    String[] projection = new String[] { ContactsContract.CommonDataKinds.Phone.NUMBER};
    Cursor c = context.getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
            projection, selection, null, null);
    if (c.moveToFirst()) {
        ret = c.getString(0);

        editText2.setText(""+ret);
                            }
    c.close();
    if(ret==null)
        ret = "Unsaved";
    return ret;
    }
}

答案 1 :(得分:0)

也许这会有所帮助:Contacts-Provider