Android添加联系人然后ContentResolver.requestSync()SyncStatusObserver:同步完成未调用

时间:2016-03-05 03:41:51

标签: android synchronization android-contacts android-contentresolver

我是编辑联系人的新手。我想知道添加的联系人的处理(同步/聚合)何时完成。我正在通过ops.add(ContentProviderOperation.newInsert添加联系人。

我以为我可以使用SyncStatusObserver,并在帖子Android - how to get notified when sync finishes, when requesting a sync with ContentResolver.requestSync()中实施了这两个版本(一个,然后是第二个)。

但是,当我将联系人插入到具有同步联系人onStatusChanged设置的Google帐户时,系统不会调用MySyncStatusObserver onSyncsFinished / ON。当我运行ContentResolver.requestSync时,不会在以后调用它们。当我手动将Android中的联系人添加到Google帐户时,系统不会调用它们。 当我手动将同步选项设置为off然后on时,调用了SyncStatusObserver。

顺便说一句,来自post的ContentResolver.requestSync(account, "the sync authority", null);产生null异常,我将null更改为

Bundle settingsBundle = new Bundle();
settingsBundle.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
settingsBundle.putBoolean(ContentResolver.SYNC_EXTRAS_EXPEDITED, true);

我错过了什么?如何在添加联系人后找出同步/聚合完成的时间?我现在的主要目标是等到WhatsApp帐户从插入中获取所有联系人。

0 个答案:

没有答案