`

依据联系人的电话号码(number)查询联系人的ID

 
阅读更多

PhoneNumberUtils
PhoneNumberUtils.compare(String s1, String s2)

Phone.CONTENT_URI = "content://com.android.contracts/data/phones"

table contracts, raw_contracts, data 

    以下博文我虽然在博文“Android系统源码数据库(contacts2.db)中几个表之间的关系

”有所介绍,但是我个人认为这项功能非常重要,所以单独拿出来,做为一个知识点.....

如果你仔细研读代码,可以发现我所写的一下方法还有一个功能就是:判断一个电话号码是否已经被保存。

 

在编码过程中,知道了联系人的contact_id,能够帮我们做很多事情

例如:

    1. 依据contact_id,去查询该联系人的照片

    2. 依据该联系人的contact_id, 去查询该联系人的名字

    3. 依据该联系人的contact_id ,查询同一个contact_id有多少个电话号码。


 

Phone.CONTENT_URI = content://com.android.contacts/data/phones” -> Android 2.0及以上版本

通过查看源代码发现:该URI主要对应着contacts表,raw_contacts表,data表。这段源码对于刚了解该contact2数据库的人说比较费劲,

qb.setProjectionMap(distinct ? sDistinctDataProjectionMap : sDataProjectionMap);是非常重要的线索,它告诉我们会查询哪些字段

分享到:
评论

相关推荐

    查看并获取联系人电话

    以下是一个简单的示例代码,展示如何获取联系人的电话号码: ```java public List<String> getContactPhoneNumbers(Context context) { List<String> phoneNumbers = new ArrayList(); if (ContextCompat....

    简单的电话号码查询

    在这个“简单的电话号码查询”项目中,我们使用C++编程语言来实现一个电话簿系统,该系统基于单链表的数据结构。单链表是一种线性数据结构,其中每个元素(节点)包含数据以及指向下一个元素的引用(指针)。在这个...

    基于android studio的读取联系人并可点击拨打电话

    这个项目,"基于android studio的读取联系人并可点击拨打电话",显然是一个教学或示例项目,它借鉴了郭霖的畅销书《第一行代码》中的方法。下面将详细讲解如何实现这一功能。 首先,我们需要了解Android的权限管理...

    根据电话号,姓名模糊查询通讯录

    这个功能允许用户通过输入部分电话号码或姓名,就能找到相应的联系人信息,提高了用户体验。 首先,我们需要了解Android系统的通讯录访问机制。Android提供了一个ContentProvider接口,它是一个系统服务,用于存储...

    Android调用系统通讯录,选择联系人,拨打电话

    以上就是关于Android调用系统通讯录、选择联系人、拨打电话、添加及查询联系人的详细步骤和关键代码。在实际开发中,还需要注意权限管理、UI设计以及错误处理等方面,确保应用的稳定性和用户体验。

    读取系统联系人和调用系统联系人

    // 通过联系人ID获取电话号码 Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=?", new String...

    选择联系人打电话

    如果需要获取联系人的电话号码,还需要针对具体联系人ID查询`ContactsContract.CommonDataKinds.Phone`表: ```java String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));...

    电话号码查询系统 有代码和文档

    电话号码查询系统的实现可能会利用C++的类和对象来封装数据和操作,创建一个清晰的结构,每个类可能代表不同的实体,如电话号码、联系人或查询结果。例如,可以定义一个`PhoneNumber`类来存储电话号码、联系人姓名等...

    使用C语言设计电话号码查询系统

    电话号码查询系统是一种常见于企业和组织的信息管理系统,用于存储并快速检索员工或客户的电话号码。在本项目中,我们将利用C语言设计这样一个系统,并采用二叉树作为数据结构来优化查询效率。C语言是一种底层、高效...

    Android实现电话号码归属地的查询源码

    在Android平台上,开发一个能够查询电话号码归属地的应用是一个常见的需求。这个应用通常会通过集成外部服务,如WebService,来获取并展示电话号码的相关信息。本文将深入探讨如何使用Android源码实现这一功能。 ...

    c语言写的电话簿,有添加删除查询联系人的功能

    这个程序提供了添加、删除和查询联系人的功能,这对于理解和掌握C语言的基础知识以及数据管理非常有帮助。 首先,C语言是计算机科学中的一种基础编程语言,以其高效、灵活和对底层硬件的直接访问而闻名。编写电话簿...

    添加联系人号码

    // 指定类型为电话联系人 startActivityForResult(intent, REQUEST_CODE_CONTACT_PICKER); // 启动活动并指定请求码 ``` 在这里,`REQUEST_CODE_CONTACT_PICKER`是你自定义的一个整数值,用于在onActivityResult()...

    Android获取手机通讯录、sim卡联系人及调用拨号界面方法

    查询参数包括联系人的ID、显示名和电话号码,我们通过`Phone.TYPE_MOBILE`筛选出仅包含手机号码的联系人。 接下来,获取SIM卡联系人的过程与获取手机通讯录类似,只是需要查询不同的URI。对于SIM卡联系人,我们可以...

    获取联系人姓名和电话

    // 获取联系人的电话号码 Uri phoneUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, String.valueOf(cursor.getInt(cursor.getColumnIndex(ContactsContract.Contacts._ID)))); Cursor ...

    tel-number.rar_用 链表 写的 电话号码

    其中,`name`存储联系人的姓名,`phoneNumber`存储电话号码,`next`是一个指针,指向下一个联系人节点。 接下来,我们需要实现基本操作: 1. **创建链表**:初始化一个空链表,通常设置头节点为NULL。 2. **添加...

    联系人API 示例

    5. 对于每个联系人,可以再次查询其详细信息,如电话号码和电子邮件,通过`ContactsContract.Data.CONTENT_URI`,并使用联系人的ID作为查询条件。 此外,示例可能还展示了如何插入新的联系人,这涉及到创建一个`...

    利用C++哈希表的方法实现电话号码查询系统

    为了实现电话号码查询系统,我们可以定义一个结构体或者类,包含电话号码和对应的联系人信息。例如: ```cpp struct PhoneNumberEntry { std::string phoneNumber; std::string contactName; }; ``` 然后,我们...

    android读取系统联系人

    如果需要获取更详细的信息(如电话号码、电子邮件地址等),需要对每个联系人ID进行二次查询,例如: ```java Uri contactUri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, id); Cursor...

    数据结构课程设计散列表电话号码查询系统

    在本课程设计中,主要目标是构建一个基于散列表的电话号码查询系统,该系统能够高效地存储和检索用户信息,特别是电话号码。散列表作为一种数据结构,通过散列函数将键(如人名)映射到数组的特定位置,以此实现快速...

    foreach语句.zip存储联系人及其查询号码

    这个压缩包文件"foreach语句.zip"可能包含了一些示例代码,用于演示如何使用`foreach`来处理联系人数据,并查询特定联系人的电话号码。 在C#中,`foreach`循环通常用于遍历数组或集合中的每个元素。例如,如果你有...

Global site tag (gtag.js) - Google Analytics