ios 简书 获取通讯录信息_GitHub - jkpang/PPGetAddressBookSwift: 一行代码极速获取按A~Z分组精准排序的通讯录联系人 Swift版( 已处理姓名所有字符的排...

PPGetAddressBookSwift

68747470733a2f2f696d672e736869656c64732e696f2f62616467652f706c6174666f726d2d694f532d7265642e73766768747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c616e67756167652d53776966742d6f72616e67652e73766768747470733a2f2f696d672e736869656c64732e696f2f636f636f61706f64732f762f505047657441646472657373426f6f6b53776966742e7376673f7374796c653d666c617468747470733a2f2f696d672e736869656c64732e696f2f636f636f61706f64732f64742f505047657441646472657373426f6f6b53776966742e73766768747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542532304c6963656e73652d627269676874677265656e2e73766768747470733a2f2f696d672e736869656c64732e696f2f62616467652f776569626f2d6a6b70616e672d2d2545352542412539452d7265642e737667

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

新建 PP-iOS学习交流群 : 323408051 有关于PP系列封装的问题和iOS技术可以在此群讨论

AddressBook.mov.gif

Requirements 要求

iOS 8+

Xcode 8+

Installation 安装

1.手动安装:

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

2.CocoaPods安装:

first

pod 'PPGetAddressBookSwift',:git => 'https://github.com/jkpang/PPGetAddressBookSwift.git'

then

pod install或pod install --no-repo-update

在你需要使用的地方 import PPGetAddressBook

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

Usage 使用方法

*注意, 在iOS 10系统下必须在info.plist文件中配置获取隐私数据权限声明 : 兼容iOS 10:配置获取隐私数据权限声明

一、首先必须要请求用户是否授权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是我持续更新的动力!

===

CocoaPods更新日志

2016.10.30(tag:0.2.0)--1.对姓"长","沈","厦","地","冲"多音字进行优化处理; 2.将'#'key值排列在A~Z的末尾! 3. 修复优化其他BUG

2016.09.24(tag:0.1.5)--适配Swift3

2016.09.18(tag:0.1.1)--修复可能造成崩溃的Bug

2016.09.17(tag:0.1.0)--Pods初始化

联系方式:

QQ群 : 323408051

PP-iOS%E5%AD%A6%E4%B9%A0%E4%BA%A4%E6%B5%81%E7%BE%A4%E7%BE%A4%E4%BA%8C%E7%BB%B4%E7%A0%81.png

许可证

PPGetAddressBookSwift 使用 MIT 许可证,详情见 LICENSE 文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值