Tag: abaddressbook

将kABPersonPhoneProperty转换为阿拉伯数字

我正在阅读手机通讯录中的电话号码,一些数字保存在非阿拉伯数字,即(123456789)如何将这些数字转换为阿拉伯数字(123456789) 这就是我如何提取数字 CFTypeRef phoneProperty = ABRecordCopyValue(record, kABPersonPhoneProperty); NSArray *phones = (__bridge_transfer NSArray *)ABMultiValueCopyArrayOfAllValues(phoneProperty); 现在手机包含电话号码作为NSString对象

如何使用iPhone本机用户界面在联系人中添加联系人

我想在用户点击电话号码时在Contact List添加电话号码。 我不想在后台编程,并在保存后通知用户。 我最近在trueCaller中看到了Feature。 其中当我点击save to contactbutton,然后iPhone's默认联系人添加屏幕打开点击电话号码。 我search了SO和Web,但发现只通过代码添加。 我怎样才能做到这一点,请帮助我。

ABPeoplePickerNavigationController自定义

我想使用ABPeoplePickerNavigationController但我想定制视图。 我想要一些联系人的附件图像,我想以不同于默认的方式对它们进行sorting。 有没有办法做到这一点? 或者我必须创build我自己的UITableViewController ?

是否有可能find也有苹果设备的用户的联系人?

鉴于iOS通讯簿API或其他App Store友好的API,是否可以find同样使用iOS的用户联系人? 我能够想出的唯一启发就是find所有具有kABPersonPhoneIPhoneLabel电话号码的联系人 – 但是这种方法有很多误报和否定。

在SWIFT中从iPhone获取联系号码时,应用程序崩溃

我正在尝试使用以下代码获取联系人: var addressBook: ABAddressBook! let addressBookRef: ABAddressBook = ABAddressBookCreateWithOptions(nil, nil).takeRetainedValue() var arrContacts = [""] var personNameContactNo:[String: String] = ["":""] var arrOfDictContacts = NSMutableArray() var Name: String! if let people = ABAddressBookCopyArrayOfAllPeople(addressBook)?.takeRetainedValue() as? NSArray { for person in people{ if let name = ABRecordCopyValue(person, kABPersonFirstNameProperty).takeRetainedValue() as? String { Name = name } let numbers:ABMultiValue = ABRecordCopyValue( […]

在iOS 6模拟器中的ABAddresBook权限

你知道权限是否在模拟器上工作吗? 我请求访问,但不能在Pricacy设置中看到我的应用程序,我也收回所有联系人的数组等。而根据我的代码访问权限已被授予。 这是一个模拟器的问题?

iOS 9 | 联系人框架

我有应用程序devise为使用联系人的ABAddressBook framework的iOS 8。 在iOS 9中, Contacts framework被引入来代替ABAddressBook 。 要检查这种变化的影响,我检查了iOS 9设备,一切工作正常。 我的理解在这里正确吗?

ABRecordCopyValue()EXC_BAD_ACCESS错误

在我的应用程序中,我必须检索用户联系人的某些属性。 例如,我需要检索联系人的名字,姓氏,中间名,昵称,组织,职位,部门,生日,电子邮件等。我有一些方法来检索这些属性,只有几个工作,即使他们都非常相似。 这里是我的一个方法正在工作(名字)和一个不是(职位)的代码: +(NSString *)fetchFirstnameForPersonID: (NSUInteger)identifier{ NSString *firstName; ABRecordRef currentPerson = (__bridge ABRecordRef)[[PSAddressBook arrayOfContacts] objectAtIndex:identifier]; //If the first name property exists if ((__bridge_transfer NSString *)ABRecordCopyValue(currentPerson, kABPersonFirstNameProperty) != NULL){ firstName = (__bridge_transfer NSString *)ABRecordCopyValue(currentPerson, kABPersonFirstNameProperty); } //If the first name property does not exist else{ firstName = @"NULL"; } return firstName; } +(NSString *)fetchJobTitleForPersonID: (NSUInteger)identifier{ NSString […]

使用NSPredicate的Swiftfilter数组

我有一个用Swift编写的应用程序,它将通讯录中的用户联系人拉进来。 我想过滤掉只包含公司名称的联系人(这样您就可以获得“假定的”真人联系人而不是业务) 下面是在我的应用程序的Objective-C版本中如何完成的: NSArray *allContacts = (__bridge_transfer NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook); NSPredicate *predicate = [NSPredicate predicateWithBlock:^BOOL(id person, NSDictionary *bindings) { NSString *firstName = CFBridgingRelease(ABRecordCopyValue((__bridge ABRecordRef)person, kABPersonFirstNameProperty)); NSString *lastName = CFBridgingRelease(ABRecordCopyValue((__bridge ABRecordRef)person, kABPersonLastNameProperty)); return (firstName || lastName); }]; NSArray *peopleNotCompanies = [allContacts filteredArrayUsingPredicate:predicate]; 这完美的工作,所以这里是我在Swift中做到这一点的尝试: var contactList: NSArray = ABAddressBookCopyArrayOfAllPeople(addressBook).takeRetainedValue() var predicate: NSPredicate = NSPredicate { (AnyObject person, NSDictionary […]

WhatsApp如何更快地从iOS地址簿更新联系人?

我的发现 我正在devise一个逻辑来同步与我的后端联系。 我经历了一些在IOS中做同样的事情的应用程序。 我将以WhatsApp为例,我发现,当我更新本地通讯录中的任何联系人时,它会反映到WhatsApp的变化部分。 我的顾虑 我只是想知道它是如何以更快的速度进行同步的。 即使是一个新的联系人与远程服务器同步,并显示在联系人,并能够启动WhatsApp的聊天,如果这个号码是注册之一。 查询摘要 所以,简而言之,我的疑问是, Whatsapp如何同步联系人? 如何WhatsApp的只是从本地通讯录更新联系人列表(如果这样做)? howsapp只是简单地将新的联系人添加到地址簿中,是否有什么像时间戳或其他任何东西一样pipe理? 我知道以下这些事情是有的, ABAddressBookGetPersonCount ABAddressBookGetPersonWithRecordID ABAddressBookCopyArrayOfAllPeople 使用ABAddressBookGetPersonCount我可以知道是否有任何新的联系人,但我仍然可以知道它的loggingID,而无需迭代每个联系人使用ABAddressBookCopyArrayOfAllPeople 所以我只是要求得到更新列表的方式。