问题标签 [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 投票
1 回答
845 浏览

android - 从电话号码查找联系人 - 旧与新 URI:旧失败,新成功?

我在这里阅读了相关的几个问题,但找不到答案:我有一台 Android 2.1 设备(HTC Incredible)。但是,我的应用程序必须与早期(SDK 5 之前)设备兼容,因此我使用了已弃用的过滤器 URI 格式:

号码的格式为 15555551212。​​至少在我的设备上无法找到联系人。但是,更改为新的(SDK 5 及更高版本)ContactsContract 格式 URI

结果成功。本来Contact中对应的号码是+1 555 555 5555的格式,但是我改成完全匹配输入的号码15555555555,老格式的URI还是不行。在这两种情况下,新格式的 URI 都会成功。

有人对为什么会这样有任何想法吗?我难住了!

0 投票
1 回答
1886 浏览

java - Android HAS_PHONE_NUMBER

我正在尝试编写一种方法来确定联系人是否至少有一个电话号码,目前我有这个:

该方法总是返回 false,即使我知道有问题的联系人有电话号码。我也知道contactId是正确的,因为我也用它来获取邮政地址等。

任何帮助将不胜感激,因为我即将把头发扯掉:p

谢谢。

0 投票
1 回答
195 浏览

android - 安卓2.2;您可以同时从 2 个不同的 URI 查询吗?

如果您想从两个单独的 URI 中获取联系人数据,您可以在单个查询中执行此操作吗?

例如 :

应针对 CommonDataKinds.Email URI 返回所有可用列

如果我想从电子邮件和电话类型中返回所有条目怎么办?

我需要创建两个单独的查询并连接结果吗?

0 投票
4 回答
6938 浏览

android - Get Postal address from a contact using ContactsContract api on android

I am using ContactsContract api intent for showing all contacts from an activity. This intent returns an id of the contact. I need to get the postal address of this contact.

Here is the code which i am using for showing contacts:

Intent intent = new Intent(Intent.ACTION_PICK); intent.setType(ContactsContract.Contacts.CONTENT_TYPE); startActivityForResult(intent, PICK_CONTACT);

I am getting the result in the onActivityResult function.

Please help, how do i do this.

0 投票
1 回答
1126 浏览

android - 访问联系数据

唉,我的电话簿中有大约 500 个联系人,由于某种原因,在将它们与 Thunderbird 同步后,显示名称是随机的最后一个,第一个……最后一个。所以我想我应该把一个快速的小部件放在一起,先把我的显示名称重新做一遍。我使用的代码如下,但是我没有得到最后一个/第一个值。光标中的键存在(data1,data2),但值分别为“1”和空。有任何想法吗?

0 投票
0 回答
1091 浏览

android - 更新/插入新的 Android 联系人 API

在新的 android 联系人 API 中添加联系人时,我可以使用newAssertQuery()进行插入,还是只更新现有条目。如果是这样,newAssertQuery()newUpdate()有什么区别?

更一般地说,我是否需要先检查原始联系人或数据是否存在,然后再插入或更新,还是有更简单的方法?

0 投票
2 回答
3594 浏览

android - 如何使用 Android 版 Facebook 同步的联系人图片

我的手机上有 Android 版 Facebook,它会自动将联系人列表中人员的 FB 个人资料图片同步到我的手机。

我想在我访问的应用程序中使用这些图片ContactsContract.PhoneLookup

我真的需要 Facebook SDK 来做到这一点吗?我猜不是,但我找不到任何证据表明照片被保存在某个地方ContactsContract

0 投票
3 回答
358 浏览

android - 为什么某些联系人会从 android 上的应用程序中被审查?

如果您尝试使用 Android 2.2 Froyo 附带的联系人管理器,它将允许您通过 Contact ContentProvider 访问 sqlite 数据库中的所有联系人。但是,如果您编写的应用程序不是 com.android.contacts,则由于此处的代码,您只能访问受限表:

http://www.google.com/codesearch/p?hl=en#cbQwy62oRIQ/res/values/unrestricted_pa​​ckages.xml&q=unrestricted_pa​​ckages&sa=N&cd=1&ct=rc

如果您尝试使用任何示例,例如 ContactManager 或市场上的任何应用程序,它将无法访问完整的联系人列表,只能访问受限视图。

受限表似乎只包含带有电话号码的联系人,不包括一些 facebook 联系人。我在开发人员文档的任何地方都找不到任何关于为什么联系人会受到限制的文档?

除了手动生根和打开sqlite db或使用自定义固件之外,还有其他方法吗?

0 投票
3 回答
1580 浏览

android - Android ContactsContract.Contact API 中缺少常量?

我已经使用 ContactsContract api 一段时间了,我遇到了在 ContactsContract.Contacts 的 API 页面中列出的两个“列”,它们似乎实际上无法评估。

值是(在列标题下):“NAME_RAW_CONTACT_ID”和“DISPLAY_NAME_PRIMARY”

通过我对 API 的阅读,这两个值似乎与用于构造给定联系人的显示名称的结构化名称(在 DATA 中)相关联。目前,直接从联系人表中访问它对我来说非常有用,但据我所知,它们实际上并不在工作 api 中(我已经针对 2.1 和 2.2 进行了测试)。

Contacts 对象中不存在关联的常量,并且尝试直接访问字段(通过使用我在在线代码转储中看到的小写字符串版本)会出现 sql 错误——如您所料,列无效.

有没有人在访问这些方面有更好的运气?这些实际上在 API 中吗?

编辑:我做了更多检查,这里有一些来自 RawContacts 的相关值,这些值在 API 上列出,但似乎实际上并不在其中:DISPLAY_NAME_ALTERNATIVE、DISPLAY_NAME_PRIMARY、DISPLAY_NAME_SOURCE、PHONETIC_NAME、PHONETIC_NAME_STYLE、SORT_KEY_ALTERNATIVE 和 SORT_KEY_PRIMARY。

所有这些似乎都是 API 中尚未包含的功能,在发布 javadoc 时错误地没有过滤掉这些功能。如果其他人也无法访问这些功能,则可能值得提交一份错误报告。

0 投票
1 回答
2240 浏览

android - Android:创建联系人 API 2.x

使用 API 我试图创建一个联系人,使用 API 2.x 而不是旧的。这里http://developer.android.com/guide/topics/providers/content-providers.html它只解释了旧的 API。我还没有找到任何合适的教程、示例等来展示如何创建联系人。据我所知,我必须创建一个原始联系人,在原始联系人下,我从那里找到了http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.html我试过了

最后一行代码显示“Data.CONTENT_URI”无法解析。看起来这行代码是针对 1.6 API 的,我把 Data.CONTENT_URI 改成了 ContactsContract.Data.CONTENT_URI。至少代码可以编译并执行,但之后我的地址簿中仍然没有联系人 Mike Sullivan。我现在也用“ContactsContract.Data”交换了其他“数据”,但仍然没有变化。

有没有人简单的例子如何在 2.x 的地址簿中创建一个人?

编辑:我取得了一些进展,看起来我总是需要手机上的帐户来添加联系人。我的手机有帐户类型 com.google 和帐户名称 xxxxx@gmail.com。模拟器什么都没有。我想知道我必须将我的联系人添加到哪个帐户?我可以假设我总是只有一个 gmail 帐户并使用这个帐户吗?