PPGetAddressBookSwift 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
PPGetAddressBookSwift 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
PPGetAddressBookSwift 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 Swift 查看源码 »
操作系统 iOS
软件类型 开源软件
所属分类 iOS代码库列表(Table)
开源组织
地区 国产
投 递 者 jkpang
适用人群 未知
收录时间 2016-09-18

软件简介

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是我持续更新的动力!

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
2 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部