如何避免在SIM卡上保存的联系人无限(背对背)同步?什么是最佳做法?

时间:2016-07-14 12:05:17

标签: android android-contacts android-syncadapter

我正在开发一个将设备联系人与服务器同步的应用,我偶然发现了这种情况。

SIM卡联系人未与其他联系人聚合,因此每次执行同步时,syncAdapter会将其作为新联系人发现并将其发送到服务器。

在我的Android设备上,(s5 - 5.0),在手机应用中,您可以将联系人从SIM导入到不同的帐户,但它们将显示为重复。很明显他们有一个特殊的情况。

如何在不避开SIM卡联系的情况下避免背靠背同步?

1 个答案:

答案 0 :(得分:0)

你可以管理这样的事情。

  1. 创建一个hashset&将所有电话号码添加到您第一次同步的电话号码中将其转换为json string&保存到共享首选项。下次再次当app将同步联系人转到服务器之前,从共享首选项&获取json字符串。将其转换为hashset&检查电话号码是否存在于hashset中。
  2. 管理服务器端的所有联系人,通过选择查询将特定用户的所有电话号码编入阵列,然后将联系人保存到数据库检查天气电话号码是否存在于数字数组中,如果没有,则将其插入数据库。