Android - 在联系人列表中搜索特定电话号码

Posted

技术标签:

【中文标题】Android - 在联系人列表中搜索特定电话号码【英文标题】:Android - search for a specific telephone number in the contacts list 【发布时间】:2013-10-10 18:52:43 【问题描述】:

我正在开发一个使用 Facebook SDK 的应用程序。 我想让用户可以通过点击他们的名字来呼叫 Facebook 好友(显示在列表视图中)。

有没有一种方法可以根据所选朋友的号码启动呼叫意图?我的意思是,如果我点击一个叫 JESS 的朋友,是否可以通过搜索用户的联系人找到 JESS 的号码?

(我不是要求通过 Facebook SDK 获取电话号码,我读过是不可能的)

【问题讨论】:

【参考方案1】:

简单解决

public String getPhoneNumber(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);
    
    c.close();
    if (ret == null)
        ret = "Unsaved";
    return ret;

【讨论】:

以上是关于Android - 在联系人列表中搜索特定电话号码的主要内容,如果未能解决你的问题,请参考以下文章

在 ArrayList 中搜索特定对象

在 FileNet 中搜索特定文件夹的文件夹层次结构

在ListView中搜索特定描述时,SearchView不会刷新

在 BlockingCollection 中搜索特定元素

在堆栈中搜索特定元素

spring-data-elasticsearch 在多个索引中搜索特定字段