5

我在我的应用程序中使用同步服务。我正在使用从通讯录中获取联系人的正常方式(使用同步服务)。

如果用户决定这样做,我想提前结束同步会话,因此,当用户按下“取消”按钮时,我会调用[driver finishSyncing]

附加到ISyncSessionDriver一个委托,它处理典型的同步会话的委托方法。其中一种方法是- (BOOL)sessionDriver:(ISyncSessionDriver *)sender willFinishSessionAndReturnError:(NSError **)outError

问题是,当调用 时finishSyncingsessionDriver:willFinishSessionAndReturnError:会被重复调用,不仅仅是一次,而是数百次。最终它会抛出一个错误。

那么,我该如何解决这个问题,或者我可以做些什么更好的调试来找出问题所在?

谢谢

4

1 回答 1

3

改用- (void)cancelSyncing

确保在不久之后释放接收器,因为您无法继续使用已取消的会话。

于 2011-06-12T09:19:21.007 回答