问题标签 [abrecordcopyvalue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 地址簿计数所有记录中的生日条目
我正在尝试计算整个通讯簿中生日条目的总数。
问题线
有更多代码可以遍历整个通讯簿中的所有联系人,但与此问题无关。
ios - 地址簿:区分 kABSourceTypeExchangeGAL 类型的来源
我要问的问题已经在这个网站上被问过很多次了(我的问题下方有指向以前线程的链接)。
使用 iOS 通讯簿并尝试获取 Exchange GAL 通讯簿时,类型名称返回 Nil。我使用的代码(并在所有以前的线程中建议)是:
这基本上意味着如果设备上映射了多个 Exchange 通讯簿(并且没有限制这样做......),则无法知道您需要哪一个。
问题是是否有人找到了解决此问题的任何方法?
提前致谢!
链接到以前的线程:
iphone - 我的应用程序因“程序收到 EXC_BAD_ACCESS”错误 iphone 而崩溃
当我的应用程序从背景启动时,我正在运行一个新线程以使用通知中心获取 AddresssBook 数据。这是我的代码,它显示了我如何调用该方法
这是我的 fetchAddressBookDataInBackground 方法的代码
但是我的应用程序在我使用“ABRecordCopyValue”函数的任何行都因“程序收到 EXC_BAD_ACCESS”错误而崩溃。我错过了什么?我的代码没有什么问题?
我尝试设置 NSZombieEnabled = YES ,但它没有显示任何消息。只需使用 ABRecordCopyValue 函数在任何行中说“程序收到 EXC_BAD_ACCESS”,在控制台中我看到(gdb)就是这样。
非常感谢任何帮助。谢谢。
ios - iOS AddressBook 框架设计背后的基本原理是什么?
我正在阅读有关如何使用 iOS AddressBook的文档。虽然到目前为止我了解它的一般机制,但我很难理解这个框架是如何构建的背后的基本原理。我刚刚完成了我的第二个应用程序,所以虽然我看到了几个 iOS 框架,但我并没有那么有经验。这个框架与我目前所看到的有何不同完全让我感到困惑。
我确信 Apple 的工程师有他们这样做的理由,但我之所以这么问是因为我认为理解或至少尝试理解其背后的思维过程非常有价值。
这是从地址簿记录中获取字符串值的记录方法:
这是获取联系人价值的记录方式,在本例中为电话号码(如果有):
最后,您可以像这样计算电话号码:
我的问题是...
当与其他框架一起工作时,所有这些小功能(如ABRecordCopyValue()
,等)背后的基本原理是完全不同的。ABMultiValueGetCount()
我的意思是,为什么使用 AddressBook 看起来不像这样?
objective-c - ABMultiValueCopyArrayOfAllValues 对象的潜在泄漏
我正在尝试修复“对象的潜在泄漏”。我有警告
同样在
Xcode 说:调用函数 'ABRecordCopyValue' 返回一个具有 +1 保留计数的 Core Foundation 对象对象泄漏:在此执行路径中稍后未引用分配的对象,并且保留计数为 +1
我不明白如何修复它。
swift - Swift (iOS 8 SDK) 转换非托管到 ABMultiValueRef
我需要从 AddressBook 框架转换此函数的返回值:
到 ABMultiValueRef 类型的值
此功能目前标记为:
所以我可以像这样将它转换为非托管:
但是我怎样才能得到它作为 ABMultiValueRef 以便我可以将它传递给这个函数呢?
我这样做了:
而且我不断收到此编译器错误:
ios - Swift - 检查非托管地址簿单值属性是否为零
我对 iOS 开发和 swift 比较陌生。但到目前为止,我总是能够通过对 stackoverflow 的一些研究以及一些文档和教程来帮助自己。但是,有一个问题我还没有找到任何解决方案。
我想从用户通讯录中获取一些数据(例如单值属性kABPersonFirstNameProperty
)。因为.takeRetainedValue()
如果此联系人在地址簿中没有 firstName 值,该函数会引发错误,所以我需要确保该ABRecordCopyValue()
函数确实返回一个值。我试图在闭包中检查这一点:
contactReference
是类型的变量ABRecordRef!
当地址簿联系人提供 firstName 值时,一切正常。但如果没有 firstName,应用程序会因该.takeRetainedValue()
函数而崩溃。看起来,if 语句没有帮助,因为ABRecordCopyValue()
函数的非托管返回值不是 nil,尽管没有 firstName。
我希望我能把我的问题说清楚。如果有人能用一些脑电波帮助我,那就太好了。