我是编辑联系人的新手。我想知道添加的联系人的处理(同步/聚合)何时完成。我正在通过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帐户从插入中获取所有联系人。