jjzjj

abaddressbook

全部标签

ios - 如何从 ABAddressBookRegisterExternalChangeCallback 获取更新的联系人列表?

我正在使用ABAddressBookRegisterExternalChangeCallback在ios通讯簿联系人更改时获取通知。如何从回调中获取更新(添加/删除/修改)的联系人列表?我不想再次重新加载我的整个联系人列表。我似乎无法在文档中的任何地方找到它。谁能指导我,该怎么做? 最佳答案 你不能。您可以做的是这将为您提供“在给定时间内修改”的联系人列表,例如:voidMyAddressBookExternalChangeCallback(ABAddressBookRefnotifyAddressBook,CFDictionary

ios - 获取拥有 iDevice 的联系人

有没有办法通过addressbookUi框架只获取拥有iDevice的联系人?例如,检查是在iMessage的消息应用程序中完成的。但这对开发人员可用吗?还是有另一种方法来检查这个?提前谢谢你.. 最佳答案 您可以检查每个地址簿记录是否有“iPhone”类型的电话号码(由常量kABPersonPhoneIPhoneLabel表示)。确实无法确定哪个联系人“拥有iDevice”,但如果通讯录记录中有他们的iPhone号码,那么他们很有可能使用iPhone。当然,这些信息如何进入您的地址簿以及它是否可靠完全是另一回事。

iphone - ABRecordCopyValue 和 ABPropertyID 崩溃

我正在尝试从iPhone通讯录中检索数据,但遇到了一些问题。首先,我有一个包含所有联系人的数组(self.allContacts):ABAddressBookRefabRef=ABAddressBookCreate();self.allContacts=(NSMutableArray*)ABAddressBookCopyArrayOfAllPeople(abRef);我还有一个名为self.allKeys的所有属性数组(每个属性都是字符串)。当我尝试使用self.allKeys中的属性获取属性时发生崩溃:NSString*currentRecord=[[NSStringalloc]in

iphone - 如何有效地搜索 iOS 通讯录

我的应用程序能够在应用程序的不同实例之间共享其内容,即有一个按钮可以让我将文档附加到电子邮件并将其发送给应用程序的另一个用户。当他们收到此文件时,它会在他们的应用程序实例中打开。这一切正常。但是,在导入这个数据文件的过程中,我需要应用程序将地址簿记录添加到地址簿中,除非电子邮件地址已经在地址簿中,否则它必须只返回ABRecordRef。我需要决定哪种方法更有效:A-遍历整个地址簿,创建一个用户定义的对象数组,其中包含名称和电子邮件地址(这是我所需要的)和ABRecordRef。然后,当应用程序读取附件文件XML时,它必须每次都检查这个NSArray。B-每当我在附件XML中遇到联系人时

iphone - ABPersonCopyImageDataWithFormat 删除联系人图片

我有这段代码可以将所有联系人图像存储在字典中。但是,在某些情况下,当它被打断时,联系人的图像就会消失。dispatch_async(dispatch_get_main_queue(),^{if(ABPersonHasImageData(_personObj)){//UIImage*image=[UIImageimageWithData:(__bridgeNSData*)ABPersonCopyImageDataWithFormat(_personObj,kABPersonImageFormatThumbnail)];NSData*data=(__bridgeNSData*)ABPers

objective-c - iOS 中未调用 ABAddressBook 外部回调

我有一个类在iPhone应用程序中保存我的用户的联系人列表。其核心实现如下。//fileContacts.m//importsherevoidMyAddressBookExternalChangeCallback(ABAddressBookRefaddressBook,CFDictionaryRefinfo,void*context){NSLog(@"callbackcalled");[[ContactssharedInstance]refresh];}@implementationContacts@synthesizeaddressBook;+(Contacts*)sharedIns

iOS 在数组中获取选定联系人的电子邮件地址

我想要做的是向用户显示人员选择器,让他选择他想要的所有联系人,最后将所有这些联系人的电子邮件地址放在一个数组中。最好的办法是只向用户显示有电子邮件的联系人。到目前为止,我唯一能做的就是向人员选择器显示以下代码:ABPeoplePickerNavigationController*picker=[[ABPeoplePickerNavigationControlleralloc]init];picker.peoplePickerDelegate=self;[selfpresentModalViewController:pickeranimated:YES];然后我尝试使用此代码获取所选联系

ios - 本地化 AB 地址簿

我有一个基于地址簿的应用程序,我可以在其中获取联系人姓名并将它们显示在表格中,就像ABPeopleViewController一样,使用NSString*name=(NSString*)ABRecordCopyCompositeName([contactsobjectAtIndex:indexPath.section]);aCell.textLabel.text=name;[namerelease];当我处理英文名字时,它工作得很好;他们是这样出来的,正如我希望他们那样:JohnSmith(good)JaneDoe(good)TaroTanaka(Actually太郎田中,andmeh

iphone - 如何从地址簿编辑 ABPersonSetImageData

我正在开发一个与AddressBook联系人一起使用的iPhone应用程序。我正在尝试从地址簿中获取图像并进行编辑,然后保存该图像。但我不知道如何更新和保存该图像。如果有人知道这一点,请给我一个解决方案。提前致谢。这是.h文件ABAddressBookRefaddressBook;IBOutletUILabel*lblName;IBOutletUIImageView*imgGet;UIImage*imgContact;NSString*name;.m文件-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationCo

iphone - ABRecordRef vCard

我想将ABRecordRef转换为vCard或NSData以通过蓝牙传输。我遇到了你的问题,我想知道你是否能弄清楚该怎么做。谢谢 最佳答案 非常简单,我正在使用iOS6并使用以下代码完成:ABRecordRefperson=(__bridgeABRecordRef)[_ABRecordCardsobjectAtIndex:0];ABRecordRefpeople[1];people[0]=person;CFArrayRefpeopleArray=CFArrayCreate(NULL,(void*)people,1,&kCFTypeA