背景: 似乎是一个已解决的问题:聊天应用程序希望将您的本地电话簿上传到他们自己的服务器以交叉检查这些号码,这样如果您的一个朋友已经注册了该服务,他们就会出现在列表中“他们与这些聊天”人们,他们也有App X“。
天真的解决方案: Android contacts Display Name and Phone Number(s) in single database query?
如上所述的方法查询电话上所有联系人数据的联系人ContentProvider。然后将此数据合并到联系人实体中,转换为JSON,并发送到服务器,在那里根据数据库检查电话和电子邮件凭据。
问题: 该解决方案由于多种原因而无法扩展。考虑类似于具有25,000个联系人的电话(这种情况发生在具有类似LDAP的企业用户)
假设有一种方法可以在首次启动后上传增量,而不是每次电话簿更改时再次上传整个联系簿。即使这样,您也可以使用初始上传来阻止用户等待,或者在应用中结束用户并且不显示任何联系人。
长话短说,我的问题是: