如何获取 iPhone 通讯录联系人的电子邮件作为 NSStrings?

2023-12-23

我知道一封电子邮件可以有多个值,但我不确定如何浏览它们。

我可以正确地找到一个人。

ABRecordRef person = // getting a person;
NSString* emails = (NSString *)ABRecordCopyValue(person, kABPersonEmailProperty);

... 下一步是什么?如果我尝试打印emails我得到的变量:

Emails: <NSCFType: 0x4018d40>

这是因为电子邮件不应该是字符串,而是数组。人们可以拥有很多电子邮件!

ABMultiValueRef emails = ABRecordCopyValue(person, kABPersonEmailProperty);
CFStringRef email = ABMultiValueCopyValueAtIndex(emails, <INDEX>);
NSLog( (NSString *) email);

Here http://developer.apple.com/mac/library/documentation/UserExperience/Reference/AddressBook/Classes/ABMultiValue_Class/Reference/Reference.html#//apple_ref/occ/cl/ABMultiValue有一些关于您可以使用 MultiValueLists 执行的操作的文档

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取 iPhone 通讯录联系人的电子邮件作为 NSStrings? 的相关文章

随机推荐

  • strtok 未处理的异常;写入位置访问冲突

    include
  • 使用 Powershell 和文件夹中的文件进行打印

    我有一个可以进行现场打印的脚本 目前它工作得不太好 因为下面的命令适用于发送到文件夹进行打印的各种文件类型 但问题是它一次只能打印 1 个文档 Start Process FilePath c tests docx Verb Print 我
  • 无法使用 Edge.js 从节点服务调用 C# DLL 内的方法

    我正在使用 Edge js 并且能够运行大部分示例 但是当涉及到使用编译的 C dll 文件时 我无法让它工作 我的node js代码是 var clrMethod edge func assemblyFile C Users hello
  • 如何从 Google App 脚本中的自定义对话框窗口获取数据?

    我创建了一个自定义对话框窗口 https developers google com apps script guides dialogs在 Google 电子表格中使用 Google App 脚本 如下所示 如何将数据从窗口获取到电子表格
  • R-使用ggplot在同一图表上为三个数据集创建图例

    我想知道是否可以使用 R 中的 ggplot 为包含多个系列图的图形创建图例框 本质上 这就是我正在做的事情 x lt c 1 2 3 4 y lt c 1 1 1 2 1 3 1 4 y2 lt c 2 1 2 2 2 3 2 4 x3
  • 网站是否也应该是一种网络资源?

    每个网络应用程序 每个网站 都是一项服务 使网站易于网络冲浪者使用的功能也使 Web 服务 API 易于程序员使用 Richardson 和 Ruby RESTFul Web 服务 正如我所希望的那样 同时也是 Web 服务的网站提供其资源
  • 制作模式以使用 NSRegularExpression

    斯威夫特 4 4 我想创建NSAttributedString using NSRegularExpression This two are bold text and different
  • 如何设置圆的物理属性,使其遵循给定的路径

    物理体圈的运动对于我想要实现的目标来说太不稳定了 我想限制它 使其遵循接触特定点 或一系列点 的特定路径 如下图所示 如何设置物理属性以遍历相似的路径 如何设置圆的物理属性 使其遵循给定的路径 因此 本质上您希望使用实时运动将节点移动到特定
  • mmap 是进程间通信的最佳方式吗?

    我使用文件在 Python 和 Ruby 脚本之间进行通信 但是 我们有 mmap 这是我的问题 我可以使用 mmap 做同样的事情 进程之间通信 吗 与物理文件相比 mmap 能给我们带来什么优势 加速 两个进程之间通信的最简单方法是什么
  • Scala:类型注释使尾递归检查失败

    我向此模式匹配添加类型注释只是为了我自己的理解 annotation tailrec def run A io IO A A io match case Return a gt a case Suspend r gt r case Flat
  • 如何制作像类一样的“可变”向量

    我正在尝试创建充当多维向量的类 它不必做任何花哨的事情 我基本上想要一个 容器 类 foo 我可以通过 foo x y z 访问元素 现在我还需要 foo x y 和 foo x 类似的类 这让我思考以下 更一般的 问题 有没有一种方法可以
  • 如何切换被单击的元素并隐藏所有其他元素?

    我想隐藏任何可见的跨度元素 如果有 并在单击元素时再次切换它 div class item a href element1 a span span1 span br div div class item a href element2 a
  • 缓存优先 Service Worker:如何绕过更新资产的缓存?

    这是场景 您有一个当前通过软件缓存的站点 您部署一个新版本 其中包含带有缓存清除版本的更新软件 然后该公司宣布了新功能 然而 人们访问该站点时 即使软件崩溃 它仍然会提供以前的缓存 同时在后台更新其缓存 因此 前来寻求新功能的访问者看不到它
  • Jqgrid + CodeIgniter

    我试图让 jqgrid 与 codeigniter 一起工作 但我做不到 我只想以 json 格式显示表中的数据 但什么也没发生 但我不知道我做错了什么 我看不到包含我正在调用的内容的表格 我的控制器 class Grid extends
  • Angular 2:找不到名称“订阅”

    尝试设置属性的类型时出现错误Cannot find name Subscription 我从哪个包导入它 import Component OnDestroy OnInit from angular core import Activate
  • 如何使用协程中的值或告知何时完成[重复]

    这个问题在这里已经有答案了 例如 当使用 WWW 类调用 Web API 时 我想要返回一个值或有关何时完成及其状态的一些反馈 那么 让我向我展示一种巧妙的方法吧 这里我们创建一个 IEnumerator 它接受一个 Action 在我们的
  • 具有传输和消息安全性的 WCF 绑定

    我正在从事一个大项目 该项目广泛使用WCF用于不同类型的通信 作为新要求的一部分 我们需要与SOAP由第三方开发的 Web 服务 他们的服务是用Java开发的 有两个安全要求 它需要基本身份验证超过运输和 该消息必须是使用 X509 证书签
  • PHP:documentElement->childNodes 警告

    xml file get contents example com dom new DomDocument dom gt loadXML xml items dom gt documentElement foreach items gt c
  • 使用 jQuery 将 JSON 附加到表单并提交

    给定这个空表单 我将如何使用 jQuery 附加 JSON 对象作为参数 然后提交它 表单应该标准提交 而不是 AJAX
  • 如何获取 iPhone 通讯录联系人的电子邮件作为 NSStrings?

    我知道一封电子邮件可以有多个值 但我不确定如何浏览它们 我可以正确地找到一个人 ABRecordRef person getting a person NSString emails NSString ABRecordCopyValue p