我正在使用ABPersonView显示和编辑ABPerson。我是这样做的:
ABPerson *person = (ABPerson *)[_addressBook recordForUniqueId:[curDict valueForKey:@"id"]];
[_personView setPerson:person];
[_personView setEditing:YES];
_personView是我的ABPersonView。当我使用ABPersonView编辑ABPerson时,我保存了AddressBook:
[ABAddressBook addressBook] save];
它确实保存,在AddressBook应用程序中我可以看到它的值已经改变,但我在Xcode和Console中收到这些错误消息:
我首先得到这个:
sandboxd: ([3082]) AddressBookSync(3082) deny file-read-data /Users/xcodeuser/Library/Developer/Xcode/DerivedData/CompanyName-asdxadsafadfqmwqxaagdsfgafguge/Build/Products/Debug
其次是:
sandboxd: ([3035]) AddressBookSync(3035) deny mach-lookup com.apple.syncservices.SyncServer
结束于此:
AddressBookSync[3035:707] [0x10011ba50] |ISyncManager|Warning| SyncServer is unavailable: timed out trying to connect
AddressBookSync[3035:707] AddressBookSync (client id: com.apple.AddressBook) error: Exception running AddressBookSync: Timed out waiting for the sync server
AddressBookSync exited with 2
我的应用程序是沙箱,我整合了iCloud。
我已经搜索过但找不到任何有类似问题的人,我试过这个:
使用[[ABAddressBook] sharedAddressBook]
代替[[ABAddressBook] addressBook]
,但我从ABPersonView收到错误,说ABPersonView不推荐使用sharedAddressBook。
我添加了SyncServices框架,没有帮助
代码确实有效,至少我的iCloud帐户。任何人都知道我为什么会收到这些错误?使用Xcode 4.3和10.8尝试它是否值得一试?我目前正与Lion一起运行4.2.1。
谢谢!
答案 0 :(得分:0)
我已经看到了同样的问题。我相信你在Apple框架中看到了一个错误。