Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/94.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何通过ContactsManager(Kekiiwaa)添加具有多个电话号码的联系人_Ios_Objective C_Ios Contacts - Fatal编程技术网

Ios 如何通过ContactsManager(Kekiiwaa)添加具有多个电话号码的联系人

Ios 如何通过ContactsManager(Kekiiwaa)添加具有多个电话号码的联系人,ios,objective-c,ios-contacts,Ios,Objective C,Ios Contacts,我曾经联系过Kekiiwaa()的经理,但我不知道如何使用多部手机添加联系人。 以下是使用一部手机添加联系人的示例代码: [self.contactsManager addContactName: @"Tefany" lastName: @"Jhonson" phones: @[@{@"label":@"mobile",@"value":@"731782982"}]

我曾经联系过Kekiiwaa()的经理,但我不知道如何使用多部手机添加联系人。 以下是使用一部手机添加联系人的示例代码:

[self.contactsManager addContactName: @"Tefany"
                          lastName: @"Jhonson"
                            phones: @[@{@"label":@"mobile",@"value":@"731782982"}]
                            emails: @[@{@"label":@"work",@"value":@"tefany@work.com"}]
                          birthday: nil completion:^(BOOL wasAdded) {

    NSLog(@"%i",wasAdded);

}];
那么如何添加多部手机的联系人?我尝试使用:
@[@{@“label”:“mobile”,@“value”:“9999999999”},{@“label”:“mobile”,@“value”:“9999999999”}]

但这是行不通的


p/s:很抱歉我的英语水平不好,谢谢你的帮助!

我从Github下载了repo,并尝试了下面的代码片段,但没有成功

[self.contactsManager addContactName:@"Test"
                            lastName:@"Name"
                              phones:@[@{
                                           @"value":@"499034699748",
                                           @"label":@"Mobile"},
                                       @{
                                           @"value":@"349034699748",
                                           @"label":@"Home"
                                           }]
                              emails:@[@{
                                           @"value":@"mail@mail.com",
                                           @"label": @"home e-mail"
                                           }]
                            birthday:nil
                               image:nil
                          completion:^(BOOL wasAdded) {
                              NSLog(@"Contact was %@ added",wasAdded ? @"" : @"NOT");
                          }];

对于电话号码字典中的标签,工作也有效。

哦,我刚刚做了。问题是:

[phonesList enumerateObjectsUsingBlock:^(NSDictionary *phone, NSUInteger idx, BOOL *stop) {
    ABMutableMultiValueRef multiPhone = ABMultiValueCreateMutable(kABMultiStringPropertyType);
    ABMultiValueAddValueAndLabel(multiPhone, (__bridge CFTypeRef)(phone[@"value"]), (__bridge CFStringRef)(phone[@"label"]), NULL);
    ABRecordSetValue(record, kABPersonPhoneProperty, multiPhone, nil);
}];
lib正在使用数组phoneList中的每个字典重新定义,因此手机将被创建为新的,而不是添加到现有联系人。因此,我认为要添加具有多个电话号码的联系人,需要将multiphone移出侧块。我已经完成了以下操作:

ABMutableMultiValueRef multiPhone = ABMultiValueCreateMutable(kABMultiStringPropertyType);
[phonesList enumerateObjectsUsingBlock:^(NSDictionary *phone, NSUInteger idx, BOOL *stop) {
    ABMultiValueAddValueAndLabel(multiPhone, (__bridge CFTypeRef)(phone[@"value"]), (__bridge CFStringRef)(phone[@"label"]), NULL);
    ABRecordSetValue(record, kABPersonPhoneProperty, multiPhone, nil);
}];

尝试将第二个键
标签
的值设置为@“工作”。还可以将键
的值设置为10位数字(如标准手机号码)如我所见,ContactsManager是一个旧的库,使用AddressBook框架。苹果建议如果您的目标是iOS 9或更高版本,则使用ContactsFramework。
要在目标为iOS 9或更高版本的应用程序中处理用户的联系信息,建议您使用Contacts和ContactsUI框架中定义的API。
哦,我明白了。这是应用程序使用AddressBook框架,我只是维护它。我在添加多部手机的联系人时遇到问题。我将在下一个项目中尝试Apple Contacts框架。但是你能帮我解决我的问题吗?