PPGetAddressBookSwift通讯录联系人列表 Swift 版

联合创作 · 2023-09-25 23:42

PPGetAddressBookSwift与Objective-C版本功能与特性相同(基于swift语言的特性,此版本会比OC版性能要好一些).在这里就不多做介绍.

Objective-C版本,请戳: https://github.com/jkpang/PPGetAddressBook

Requirements 要求

  • iOS 8+

  • Xcode 7.3.1+

Installation 安装

1.手动安装:

下载DEMO后,将子文件夹PPGetAddressBookSwift拖入到项目中,无须import,直接使用

2.CocoaPods安装:

firstpod 'PPGetAddressBookSwift'thenpod install或pod install --no-repo-update

在你需要使用的地方 import PPGetAddressBook

如果发现pod search PPGetAddressBookSwift 不是最新版本,在终端执行pod setup命令更新本地spec镜像缓存(时间可能有点长),重新搜索就OK了

Usage 使用方法

一、首先必须要请求用户是否授权APP访问通讯录的权限(建议在APPDeletegate.m中的didFinishLaunchingWithOptions方法中调用)

    // MARK: - 请求用户获取通讯录权限, 必须调用
    PPGetAddressBook.requestAddressBookAuthorization()

二、获取通讯录

1.获取按联系人姓名首字拼音A~Z排序(已处理姓名所有字符的排序问题),一句话搞定!

// MARK: - 获取A~Z分组顺序的通讯录
PPGetAddressBook.getOrderAddressBook(addressBookInfo: { (addressBookDict, nameKeys) in

    self.addressBookSouce = addressBookDict  // 所有联系人信息的字典
    self.keysArray = nameKeys       // 所有分组的key值
    // 刷新tableView
    self.tableView.reloadData()

    }, authorizationFailure: {
       print("请在iPhone的“设置-隐私-通讯录”选项中,允许PPAddressBookSwift访问您的通讯录")  
})

2.获取原始顺序的联系人模型,未分组,一句话搞定!

// MARK: - 获取原始顺序联系人的模型数组
PPGetAddressBook.getOriginalAddressBook(addressBookArray: { (addressBookArray) in

self.dataSourceArray = addressBookArray    
self.tableView.reloadData()   

    }, authorizationFailure: {
    print("请在iPhone的“设置-隐私-通讯录”选项中,允许PPAddressBookSwift访问您的通讯录") 
})

如果你有更好的实现方法,希望不吝赐教!

你的star是我持续更新的动力!

浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报