iOS 往来--书面资料

写接触知识和查询功能的基础,现在我们就来看看信息写入

  • 变化
  • 删除
#pragma mark  - 系人信息

//创建联系人
- (void) creatNewRecord
{
    CFErrorRef error = NULL;

    //创建一个通讯录操作对象
    ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, &error);

    //创建一条新的联系人纪录
    ABRecordRef newRecord = ABPersonCreate();

    //为新联系人记录加入属性值
    ABRecordSetValue(newRecord, kABPersonFirstNameProperty, (__bridge CFTypeRef)@"雪松", &error);

    //创建一个多值属性
    ABMutableMultiValueRef multi = ABMultiValueCreateMutable(kABMultiStringPropertyType);
    ABMultiValueAddValueAndLabel(multi, (__bridge CFTypeRef)@"12345678990", kABPersonPhoneMobileLabel, NULL);
    ABMultiValueAddValueAndLabel(multi, (__bridge CFTypeRef)@"11234567890", kABPersonPhoneIPhoneLabel, NULL);

    //将多值属性加入到记录
    ABRecordSetValue(newRecord, kABPersonPhoneProperty, multi, &error);
    CFRelease(multi);

    //加入记录到通讯录操作对象
    ABAddressBookAddRecord(addressBook, newRecord, &error);

    //保存通讯录操作对象
    ABAddressBookSave(addressBook, &error);
    CFRelease(newRecord);
    CFRelease(addressBook);
}

- (void) editRecord
{
    CFErrorRef error = NULL;
    ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, &error);
    ABRecordID recordID = [personIDASNumber intValue];
    ABRecordRef record = ABAddressBookGetPersonWithRecordID(addressBook, recordID);

    //设置电话号码
    ABMutableMultiValueRef multi = ABMultiValueCreateMutable(kABMultiStringPropertyType);
    ABMultiValueAddValueAndLabel(multi, (__bridge CFTypeRef)@"12345678900", kABPersonPhoneMobileLabel, NULL);
    ABMultiValueAddValueAndLabel(multi, (__bridge CFTypeRef)@"12345678900", kABPersonPhoneIPhoneLabel, NULL);

    //加入电话号码到数据库
    ABRecordSetValue(record, kABPersonPhoneProperty, multi, &error);
    CFRelease(multi);

    //保存到数据库
    ABAddressBookSave(addressBook, &error);
    CFRelease(addressBook);

}

- (void)deleteRecord
{
    CFErrorRef error = NULL;
    ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, &error);
    ABRecordID recordID = [personIDASNumber intValue];
    ABRecordRef record = ABAddressBookGetPersonWithRecordID(addressBook, recordID);

    //删除记录
    ABAddressBookRemoveRecord(addressBook, record, &error);

    //保存到数据库
    ABAddressBookSave(addressBook, &error);
    CFRelease(addressBook);
}

版权声明:本文博客原创文章,博客,未经同意,不得转载。

时间: 2024-09-30 22:08:28

iOS 往来--书面资料的相关文章

ios开发学习资料总汇

ios开发学习资料总汇 下面是收集的一些学习资料. 1.唐巧精心整理了国内40多位iOS开发博主的博客地址列表 2.ios常见加密: 链接: http://pan.baidu.com/s/1eQTGFIE 密码: p8ay 3.

iOS 开发学习资料整理(持续更新)

"如果说我看得比别人远些,那是因为我站在巨人们的肩膀上." ---牛顿 iOS及Mac开源项目和学习资料[超级全面] http://www.kancloud.cn/digest/ios-mac-study/84557 iOS 学习资料整理 https://segmentfault.com/a/1190000002473595#articleHeader16 iOS.mac开源项目及库 https://github.com/Tim9Liu9/TimLiu-iOS Swift语言 http

iOS开发之资料收集

github排名:https://github.com/trending, github搜索:https://github.com/search. 此文章转自github:https://github.com/Tim9Liu9/TimLiu-iOS UI 下拉刷新 EGOTableViewPullRefresh- 最早的下拉刷新控件. SVPullToRefresh- 下拉刷新控件. MJRefresh- 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者

iOS开发学习资料整理

基础语法学习: Objective-C: 网络上有条理的OC学习资源较少,建议购买入门书籍: <Objective-C 程序设计>([美]Stephen G. Kochan)或 <Objective-C 基础教程>([美] Scott Knaster) Swift: 语法基础:http://wiki.jikexueyuan.com/project/swift/学习博客:http://www.hangge.com/blog/cache/category_72_1.html Demo学

iOS CoreBluetooth相关资料

http://southpeak.github.io/blog/2014/07/29/core-bluetoothkuang-jia-zhi-%5B%3F%5D-:centralyu-peripheral/ http://www.saitjr.com/ios/core-bluetooth-response-as-peripheral-best-practices.html

iOS基于Ffmpeg资料(四)

一.编译针对iOS平台的ffmpeg库(kxmovie) 近期有一个项目,需要播放各种格式的音频.视频以及网络摄像头实时监控的视频流数据,经过多种折腾之后,最后选择了kxmovie,kxmovie项目已经整合了ffmpeg和简单的播放器,具体可以参考kxmovie主页:https://github.com/kolyvan/kxmovie 编译kxmovie很简单,已经支持iOS 6.1 和 armv7s,一次成功,编译过程没出现什么问题: git clone git://github.com/k

技术文摘14 iOS github 技术 资料

web前端开发与iOS终端开发的异同 iOS8多语言备选规则 慎重使用dispatch_sync 死锁 就是说,这段代码是在主线程(viewdidload)中添加的,主线程执行到这里的时候,开始执行block的task,他就会阻塞主线程, 直到queue完成了你给的task, 但queue要完成你给的task,因为queue是FIFO的,意味着要完成之前的任务,才有机会执行你刚才给的task, 相当于当前线程等待queue里面所有任务执行完毕, 因此导致死锁.所以这句话不能在当前queue的任务

iOS开发学习资料大全—30多个iOS常用动画,带详细注释

//// CoreAnimationEffect.h// CoreAnimationEffect//// Created by VincentXue on 13-1-19.// Copyright (c) 2013年 VincentXue. All rights reserved.// #import <foundation foundation.h=""> /** ! 导入QuartzCore.framework * * Example: * * Step.1 * * #

iOS安全相关学习资料

https://github.com/zhengmin1989/iOS_ICE_AND_FIRE  (冰与火代码) http://weibo.com/zhengmin1989?is_hot=1 (蒸米博客) http://drops.wooyun.org/tips/9300 http://drops.wooyun.org/papers/10156