【问题标题】:AddressBook synchronization in iOSiOS 中的通讯录同步
【发布时间】:2015-06-17 15:34:43
【问题描述】:

iOS 中是否有任何方法可以获取自上次打开应用程序以来地址簿更改的通知。

应用程序将通讯录存储在内部数据库中,我不想每次激活时都执行完全同步。

提前致谢。

澄清问题的小补充: 我使用 ABAddressBookRegisterExternalChangeCallback 来观察应用程序挂起到后台时的变化,但据我所知,如果应用程序完全关闭并重新打开(例如:手机重启后或从任务列表中关闭),此方法将不起作用。

【问题讨论】:

  • 您好,您找到解决同步问题的方法了吗?

标签: iphone objective-c ios addressbook


【解决方案1】:

也许你正在寻找这个:

ABAddressBook Reference - ABAddressBookRegisterExternalChangeCallback

您应该注册该通知!

告诉我是否有效或需要任何帮助

马里奥

【讨论】:

  • 这仅在应用程序正在运行(或在 bg 中暂停)并注册到此回调时才有效。即使应用程序完全关闭,我也想收到通知。
  • 我正在搜索创建日期,但我认为该日期不存在。在我看来,最好的解决方案是在每次用户启动应用程序时恢复您的数据,并在应用程序运行时如果地址簿发生更改时注册通知。更多信息在这里:developer.apple.com/library/ios/#DOCUMENTATION/AddressBook/…
  • 是的,我也在寻找它,但我想也许我错过了什么。如果 iPhone 包含 10k 个地址簿条目,完全同步可能会很痛苦。
  • 我会保存上次同步时间。打开我的应用程序时,我会检查同步时间和记录上次修改时间,以便在上次同步后知道哪条记录已被修改。希望对您有所帮助。
  • 但是,我怎样才能以更快的方式获得每条记录的最后修改时间?我被同样的东西困住了stackoverflow.com/questions/31759863/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多