检查android本机联系人上的联系人是否已更改以更新我的db(sqlite)

时间:2017-04-25 09:05:21

标签: java android sqlite

我正在开发生日提醒Android应用程序。我检索所有手机联系人并存储在sqlite(名称,电话,生日)。

我的问题是,如果我可以检查用户是否更改了联系人姓名或电话,请将此更新应用于我的sqlite数据库。

Android联系人有任何ID或东西吗?谢谢!

编辑:我需要存储在一个新的数据库表中,因为我有一个列' msg'如果今天是某人的生日,它会自动发送和短信。

1 个答案:

答案 0 :(得分:0)

要回答您的问题,您可以查看Contact Provider的文档,了解可用的内容。

  

ContactsContract.Contacts表还有一个LOOKUP_KEY列,它是一个永久性的"链接到联系人行。由于联系人提供程序会自动维护联系人,因此可能会更改联系人行的_ID值以响应聚合或同步。即使发生这种情况,内容URI CONTENT_LOOKUP_URI结合联系人的LOOKUP_KEY仍将指向联系人行,因此您可以使用LOOKUP_KEY维护指向"收藏夹"的链接。联系人,等等。此列具有自己的格式,与_ID列的格式无关。

所以期待这个LOOKUP_KEY LOOKUP_KEY

  

一个不透明值,其中包含有关如何通过同步或聚合更改其行ID的联系方式的提示。

这应该是安全的。

但是,当然,我会看到仅存储您要发送的ID和消息会更容易。让联系人信息在哪里,并向提供者询问今天出生的联系人列表,以便向他们发送消息。您不需要使用此解决方案与不同的数据库同步。