ContactsKit 2.1.2

ContactsKit 2.1.2

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最后发布2017年4月

Sergey Popov维护。



  • 作者:
  • Sergey Popov

ContactsKit是一个易于使用的联系人管理库,支持iOS和Mac OS X。

功能

  • 统一关联联系人
  • 支持Mac OS X
  • 联系人管理:添加、更新、删除
  • 支持NSCoding
  • 在iOS中观察更改(添加、更新、删除)

Podfile

要使用CocoaPods将ContactsKit集成到Xcode项目中,请在Podfile中指定它

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '7.0'

pod 'ContactsKit'

然后,运行以下命令

$ pod install

开始使用

将ContactsKit导入您的项目

	
	#import <ContactsKit/ContactsKit.h>
	

首先您必须创建一个CKAddressBook实例,并请求访问以获取联系人。用户仅在第一次请求访问时被提示。

	
	CKAddressBook *addressBook = [[CKAddressBook alloc] init];
    
    [addressBook requestAccessWithCompletion:^(NSError *error) {
        
        if (! error)
        {
			// Everything fine you can get contacts
        }
        else
        {
			// The app doesn't have a permission for getting contacts
			// You have to go to the settings and turn on contacts
        }
    }];

然后如果获得访问权限,您可以获取联系人

	// Get fields from the mask
    CKContactField mask = CKContactFieldFirstName | CKContactFieldLastName | CKContactFieldBirthday;
    
    // Final sort of the contacts array
    NSArray *sortDescriptors = @[ [NSSortDescriptor sortDescriptorWithKey:@"firstName" ascending:YES] ];
    
    [addressBook contactsWithMask:mask uinify:NO sortDescriptors:sortDescriptors
                           filter:nil completion:^(NSArray *contacts, NSError *error) {
       
        if (! error)
        {
            // Do someting with contacts
        }
        
    }];

或者,通过使用CKAddressBookDelegate协议完成相同操作

	
	addressBook.fieldsMask = CKContactFieldFirstName | CKContactFieldLastName | CKContactFieldBirthday;
    addressBook.sortDescriptors = @[ [NSSortDescriptor sortDescriptorWithKey:@"firstName" ascending:YES] ];
    addressBook.delegate = self;
    
    [addressBook fetchContacts];

然后将调用协议方法

	#pragma mark - CKAddressBookDelegate

	- (void)addressBook:(CKAddressBook *)addressBook didFetchContacts:(NSArray<CKContact *> *)contacts
	{
    	// Do something with contacts
	}