ios 简书 获取通讯录信息_iOS-授权获取通讯录
- (void)getContact{
CNAuthorizationStatus authorizationStatus = [CNContactStore authorizationStatusForEntityType:CNEntityTypeContacts];
if(authorizationStatus ==CNAuthorizationStatusAuthorized) {
// 获取指定的字段,并不是要获取所有字段,需要指定具体的字段
NSArray*keysToFetch =@[CNContactGivenNameKey,CNContactFamilyNameKey,CNContactPhoneNumbersKey];
CNContactFetchRequest*fetchRequest = [[CNContactFetchRequest alloc]initWithKeysToFetch:keysToFetch];
CNContactStore*contactStore = [[CNContactStore alloc]init];
//创建一个保存通讯录的数组
NSMutableArray *contactArr = [NSMutableArray array];
[contactStore enumerateContactsWithFetchRequest:fetchRequest error:nil usingBlock:^(CNContact*_Nonnull contact,BOOL*_Nonnull stop) {
NSLog(@"-------------------------------------------------------");
NSString*givenName = contact.givenName;
NSString*familyName = contact.familyName;
NSLog(@"givenName=%@, familyName=%@", givenName, familyName);
NSArray*phoneNumbers = contact.phoneNumbers;
for(CNLabeledValue*labelValue in phoneNumbers) {
NSString*label = labelValue.label;
CNPhoneNumber*phoneNumber = labelValue.value;
NSDictionary*contact =@{@"phone":phoneNumber.stringValue,@"user":FORMAT(@"%@%@",familyName,givenName)};
[contactArr addObject:contact];
NSLog(@"label=%@, phone=%@", label, phoneNumber.stringValue);
}
//*stop = YES;// 停止循环,相当于break;
}];
_contactArr= contactArr;
NSError*error;
NSData*jsonData = [NSJSONSerialization dataWithJSONObject:contactArr options:NSJSONWritingPrettyPrinted error:&error];//此处data参数是我上面提到的key为"data"的数组
NSString*jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
_jsonString= jsonString;
NSLog(@"jsonString====%@",jsonString);
[self postContactTo]; //6.上传通讯录
}else{
NSLog(@"====通讯录没有授权====");
}
}
ios 简书 获取通讯录信息_iOS-授权获取通讯录相关推荐
- ios 简书 获取通讯录信息_iOS 13获取用户通讯录需要注意的
获取通讯录还有一个最大的变化,就是iOS9以后 访问通讯录属性,要事先设置好,否则会奔溃, 下面是列表 // 姓名前缀 CNContactNamePrefixKey // 名 CNContactGiv ...
- Python获取磁盘使用信息,python获取GPU信息,python根据进程号获取进程信息,pynvml 获取GPU信息,psutil 获取进程信息,系统信息等
一.工具:psutil模块 psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况:可以使用我们学习知识与这模块用来做系统监控,性能分析:如果大家熟悉Lin ...
- android获取电池信息;android获取电池容量、技术、电压、电量、温度等信息
android获取电池信息:android获取电池容量.技术.电压.电量.温度等信息 1.这里我仅展示工具类,需要注意的是这里的部分值要刷新后才能显示,添加刷新UI的方法即可,而且电量温度等都是变化的 ...
- android获取GPU信息;android获取GPU渲染器、供应商、版本和扩展名等信息
android获取GPU信息:android获取GPU渲染器.供应商.版本和扩展名等信息 效果: 1.布局文件 <?xml version="1.0" encoding=&q ...
- ios 简书 获取通讯录信息_ios 各种权限整理
联网权限 引入头文件 @import CoreTelephony; 应用启动后,检测应用中是否有联网权限 CTCellularData *cellularData = [[CTCellularData ...
- ios 简书 获取通讯录信息_iOS9以后获取手机通讯录
一.iOS 9 以前的通讯录框架 AddressBookUI框架:提供了联系人列表界面.联系人详情界面.添加联系人界面等,一般用于选择联系人. AddressBook 框架:纯 C 语言的 API,仅 ...
- ios 简书 获取通讯录信息_当心!你用的共享充电宝可能被植入木马盗取信息
出门在外,你的焦虑感是否会随着手机电量的降低而同步提高呢?乘车.支付.娱乐.联系都离不开手机,一旦没了电简直要丢掉半条命.这个时候遍布大街小巷的共享充电宝简直成了救命稻草.然而在你放心使用共享充电宝时 ...
- android 从新浪微博获取用户信息,Android授权登录新浪微博获取用户个人信息
Android授权登录新浪微博获取用户个人信息 Android授权登录新浪微博获取用户个 人信息 一.准备工作 我们都知道,无论是分享到新浪微博,还是获取新浪微博的用户信息,都离不开一样东西,那就是新 ...
- java微信获取用户信息_SpringBoot中获取微信用户信息的方法
前言 不知道你是否参加过拼多多上邀请微信好友砍价功能,这个功能实现首先需要考虑的就是获取微信用户的信息.获取用户信息就是获取公众号下微信用户的信息,今天我就来讲讲如何从公众号下获取微信用户信息. 需要 ...
- ajax 微信code获取_微信网页授权——获取code、access_token、openid,及跨域问题解决...
首先在微信开发文档中有提到微信网页授权的操作步骤: 第一步:用户同意授权,获取code 在确保微信公众账号拥有授权作用域(scope参数)的权限的前提下(服务号获得高级接口后,默认拥有scope参数中 ...
最新文章
- 十折交叉验证10-fold cross validation, 数据集划分 训练集 验证集 测试集
- 正则化技巧:标签平滑(Label Smoothing)以及在 PyTorch 中的实现
- TYVJ1415 差分约束
- Qt Creator连接通用远程Linux设备
- java set 接口_【Java提高十七】Set接口集合详解
- 2019.08.08学习整理
- 第六十六期:软件架构之道的一次感悟
- 算法:输入一个链表,输出该链表中倒数第k个结点。
- dfs.client.block.write.replace-datanode-on-failure
- 手写简化版printf函数
- 搜索摄像头/录像机IP地址工具是什么
- recover和restore的区别
- AddressBook 代码详解
- 如何从CDN加载jQuery
- Mac下用docker安装阿波罗Apollo
- 苹果Mac笔记本电脑如何开启热点分享网络?
- 第十届蓝桥杯省赛原题及参考答案
- 第1章 Kali Linux入门 一篇就够了
- Python实践-咚咚呛讲师Python进阶教程
- Maven setting.xml 配置
热门文章
- linux判断内存并释放,linux 内存清理/释放命令
- 计算机课伤害事故的防范,体育课安全伤害事故的防范与处理
- python多线程框架_基于python和bash的多线程任务框架 不要让cpu闲着了
- linux 声明消息函数,linux消息队列函数--解析
- 一个事物两个方面的对比举例_顶管施工也有讲究,两个方面一个个来
- c ++向量库_在C ++中对2D向量进行排序
- python整数转换字符串_Python | 将字符串转换为整数列表
- scala 函数中嵌套函数_如何在Scala中将函数转换为部分函数?
- Thread线程的深刻理解和代理方法参数[有图有真相]
- 1-2.Win10系统利用Pycharm社区版安装Django搭建一个简单Python Web项目的步骤之二