唯一的联系人ID

android是否为每个联系人分配唯一的常量ID?
如果没有,是否有办法将这些信息分配给他们? 我可以将这个ID同步到谷歌联系人吗?

谢谢。

Solutions Collecting From Web of "唯一的联系人ID"

在android联系人中有两种types的联系ID。

一个是CONTACT_ID,另一个是RAW_CONTACT_ID

请参阅本教程。 ANDROID联系

希望这会帮助你。

您只能检索同步Google联系人的唯一ID。 在其他情况下,您可能会得到不同的id,因为每当用户重置或重新导入联系人到电话簿时,每个联系人的Android raw_id都会更改。

如果你想要不pipe设备,平台的一致性,那么或者只使用同步的Google联系人,或者在代码中编写自己的工作,以便生成唯一的ID,例如获取联系人的号码,名字等

ContactsContract.RawContacts SOURCE_ID 

一个string值,用于唯一标识此原始联系人与创build该联系人的帐户

当同步适配器创build新的原始联系人时,应将此列设置为原始联系人的服务器的唯一ID。 当Android应用程序创build新的原始联系人时,应用程序应该将该列留空。 这表示它应该在服务器上创build一个新的原始联系人并获取SOURCE_ID的值。 特别是,每个帐户types的源代码ID必须是唯一的,并且在同步过程中应该是稳定的:

唯一:每个帐户的原始联系人必须拥有自己的源ID。 如果您不强制执行此操作,则会在联系人应用程序中导致问题。 请注意,同一个帐户types的两个原始联系人可能具有相同的源ID。 例如,账户emily.dickinson@gmail.com的原始联系人“Thomas Higginson”被允许与账户emilyd@gmail.com的原始联系人“Thomas Higginson”具有相同的源ID。 稳定:源ID是原始联系人的在线服务数据的永久部分。 例如,如果用户从“应用程序”设置中清除“联系人存储”并重新同步,则恢复的原始联系人应具有与以前相同的源ID。 如果您不强制执行此操作,快捷方式将停止工作。

联系Provicer