问题标签 [contactscontract]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
15384 浏览

android - Android 联系人应用程序上联系人的默认帐户类型/名称是什么?

我想从仅属于电话/SIM 卡的 ContactsContract API 读取联系人,并希望避免从 facebook 和 gmail 等其他应用程序同步联系人。我在模拟器上测试了我的代码,它工作正常,但在真实设备上它不返回任何结果。

我猜在设备上默认帐户的帐户类型和名称不为空,解决方案是什么?

0 投票
1 回答
1199 浏览

android - 联系人选择器结果

我正在为我的应用程序使用 ContactPicker。我正在使用本教程来构建我的 onActivityResult 方法。我无法构建内容左轮手枪;

不起作用,应用程序崩溃,我不知道它抛出了什么样的 ox 异常,如果有的话。我究竟做错了什么?

代码:

0 投票
2 回答
702 浏览

android - 通过 ID 使用“ContactsContract”从联系人中检索电话号码?

我可以使用 id 代码检索联系人的显示名称,如下所示:

其中“selectedid”是我要检索的联系人的 ID。现在我在从该 ID 中检索电话号码时遇到问题。

如果可能的话,你可以输入我必须添加的代码以从该 ID 中获取电话号码吗

0 投票
2 回答
983 浏览

android - 使用 ContactsContract-API 的联系人聚合视图

我对这里的新 ContactsContract-API 有点坚持。我想我并不完全理解 API,希望有人能给我提示。

我在文档中指出,Android 正在将几个 RawContacts 聚合到所谓的“聚合联系人”中。这是 2.x Androidrelease 的一个相当不错的新功能。

我不能做的是访问这个“聚合联系人”。例如,用户有一个普通的电话联系人,其电话簿中保存了实名和电话,并且他与 facebookcontact 具有相同的人,具有他的昵称和生日。现在,他加入了这两个联系人,并拥有他可以访问的真实姓名、电话生日的良好聚合联系人。

我的问题:作为开发人员,我如何才能访问这个聚合的联系人?

我想过让所有 RawContacts 与一个联系人相关联,如下所示:

但是那样我就无法确定哪个名字是Contact的“真实姓名”等问题。而且我不喜欢我自己如何聚合这些 RawContacts 的其他骇人听闻的想法,因为 Android 在用户的帮助下已经完成了这项工作。

非常感谢我如何查询这些聚合联系人的任何提示!

0 投票
0 回答
519 浏览

android - 添加新联系人时如何设置custom_ringtone?

我可以插入其他联系信息,例如电子邮件和电话号码等等,但是这种设置自定义联系人铃声似乎很典型,任何人都可以提供插入此信息的方法吗?

我正在按照这种方法插入其他东西 http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.html

0 投票
3 回答
8410 浏览

android - 获取联系电话号码

我无法获取联系电话号码,我在日志中不断收到错误消息

这是我的代码

一切正常,直到我尝试获取电话号码

0 投票
3 回答
6908 浏览

android - 使用电子邮件 ID 获取联系人

我需要通过电子邮件获取联系人信息(光标)。它们必须是不同的。如果他收到电子邮件,则每个联系人必须有一个条目。怎么做?我的目标是 2.0 附带的新联系人 API。

1)我尝试使用 CursorJoiner 来做,但发生了一件奇怪的事情。这是我的代码:

现在我的问题是我得到这样的输出:在这个日志中它的_id | 显示名称 | 由于隐私问题,我已经更换了电子邮件 ID

但是你可以看到它直接从9跳到90然后都是9 9 9,这是什么?

2)我们可以使用 distinct 关键字来做到这一点吗?是否可以使用 ContactsContract 之类的联系人提供商?

0 投票
2 回答
11332 浏览

android - 联系人与原始联系人有什么区别?

我有一个用于研究 ContactsContract 的“转储”实用程序,因为我在文档中不太了解它。但是,当我转储联系人时,它会在表中记录 263 条记录,但我设备上的联系人应用程序列出了我有 244 条记录(“显示 244 条联系人。”)

有人可以解释这种差异吗?

我的 Sprint LG 的联系人应用程序具有我同步的每个帐户的显示选项,我已经进入并检查了所有这些帐户,因此不应该有任何过滤。

我在实用程序中使用的主要 URI 是:

后跟(对于上述查询中的每个 _ID):

然后我遍历第一个查询,显示我的投影中的所有列,然后,使用第一个查询循环中的 _ID 字段,我发出第二个查询并转储它的所有列。

为方便起见,此处转置了答案中的项目符号: 有关更详细的说明,请参阅参考资料。更具体地说,我们鼓励您阅读聚合规则。 参考:单击此处查看后面的原始引用文本

  • 联系人数据库分为 3 个表联系人、原始联系人和数据。
  • 每个表都包含列 (_ID),它是一个自动递增的主
    键。
  • 数据表包含所有联系信息,如电话号码、邮件 ID、
    地址等。
  • 原始联系人指向创建的实际联系人。因此,我们在添加联系人时使用原始联系人。
  • 用户不能在联系人表中添加任何数据。 由于联系人聚合,此表中的数据在
    内部填充。

您的逻辑适用于某些联系人的原因是:联系人的_ID,原始联系人保持不变,直到发生任何联系人聚合。假设您添加了两个同名 abc 的联系人。这里原始联系人的 _ID 增加了两次,而联系人的 _ID 只增加了一次,因为这两个联系人由于联系人的聚合而合并

0 投票
1 回答
3985 浏览

android - Android:使用原始联系人 ID 正确访问和查询

所以我的应用程序正在尝试将同步适配器集成到 android 本机联系人管理器中。这一切都运行顺利,除了一旦同步联系人,我无法更新它。可以在此处找到有关此特定问题的详细信息:Android:内容解析器查询不应该返回 0 行但我可以简单地说我的内容解析器查询返回 0 值,因为我正在查询错误的 URI,我相信。

当我将原始联系人 ID 写入手机时,我使用以下代码:

当您将新联系人添加到同步列表时,将调用此构造方法:

正如您在构造函数中看到的那样,我正在调用一个名为 newInsertCpo 的方法,可以在此处查看:

现在您可以看到代码,让我解释一下问题。当我创建和编写原始联系人 ID 时,我对 RawContacts.CONTENT_URI 这样做:

但是,当我查询 uri 时,我是这样查询的:

来自 Data.CONTENT_URI。我相信这是我的问题发生的地方。我使用了来自 Android 官方开发网站的示例代码并针对我自己的用途对其进行了定制,但这部分与示例非常吻合。然而它不起作用。我的线索就是我所说的,我正在写信给一个 Uri 并查询另一个。但是我尝试将查询更改为 RawContacts.CONTENT_URI(这会导致异常),并将我写入的 Uri 更改为 Data.CONTENT_URI,这也会导致异常。更令人困惑的是,当我执行 lookupRawContactId 方法时,我会从 Data.CONTENT_URI 获取原始联系人 ID:

所以是的,如果我得到一个返回 rawcontactId 的游标,为什么我会得到 0 个值来查询具有相同 rawcontactId 我返回的相同 Uri?这没有任何意义!有没有人有任何见解?谢谢大家。

0 投票
1 回答
879 浏览

android - Android 联系人查询获取重复项

我正在尝试获取联系人的所有电话号码。当我用光标查询与联系人关联的号码时,我得到每个号码的重复项。在四处窥探之后,我相信这是因为链接的个人资料(即 Google 个人资料和电话联系人个人资料)。这是我提取数字的代码:

有没有办法将此查询限制为某个配置文件?提前致谢。我已经对此进行了一段时间的搜索,但找不到任何解决方案。