苹果手机 |通过简单的短信发送电子名片

Posted

技术标签:

【中文标题】苹果手机 |通过简单的短信发送电子名片【英文标题】:iPhone | Send vCard via simple SMS 【发布时间】:2012-11-26 08:03:50 【问题描述】:

我想通过简单的 SMS 发送 vCard。 我不打算通过电子邮件的 iMessage 发送 vCard。

我创建了一个格式如下的 vCard。

BEGIN:VCARD
VERSION:3.0
N:;Sahil;;;
FN:Sahil
EMAIL;type=INTERNET;type=HOME:s.k@yahoo.com
TEL;type=CELL:98-76-543210
END:VCARD

我正在尝试将以上内容发送至MFMessageComposeViewController。当我发送消息时,其他设备会以简单 SMS 的形式接收。

我想知道是否可以通过 iPhone 中的普通 SMS 发送 vCard?如果是,我需要遵循一些编码吗?

注意:只是有关如何从 BlackBerry 设备发送 vCard 的信息

sms.setPayloadData(card.getBytes("ISO-8859-1"));

【问题讨论】:

我认为您混淆了 FNN 属性。 N 存储人名的组成部分,用分号分隔。 FN 定义了人名的显示方式。在 vCard 3.0 版中,这两个属性都是必需的。此外,您示例中的 TEL 属性的 TYPE 参数值不正确。正确的值是“CELL”,而不是“MOBILE”。 @Michael 我使用来自altoshstock.blogspot.in/2010/11/iphone-os-generate-vcard.html 的代码并尝试发送电子名片。仍然是同样的问题...请参阅更新后的问题以及您指出的更正。 您的屏幕截图中缺少BEGINEND 属性。 由于 ios 消息应用程序 UI 限制,BEGIN 和 END 标签不可见。内容与问题中提到的格式相同(包括BEGIN/END标签)。 您找到解决方案了吗?我正在解决完全相同的问题 【参考方案1】:

您尝试做的事情是不可能的。您只能通过 MFMessageComposeViewController 的公共 API 发送纯文本。目前不支持附件或替代内容。

【讨论】:

这应该是公认的答案。使用当前的 API 是不可能的。【参考方案2】:

在此处检查您的问题的可能答案:

Send location information or vCard through SMS on iPhone

Creating a vCard in iPhone

how can I send vCard through sms message in code?

https://github.com/aussiegeek/AddressBookVcardImport

http://www.developerfeed.com/objectivec/howto/how-generated-vcard-using-objectivec-iphone

【讨论】:

我已经尝试了前 3 个链接。第四:它是一个 vCard 导入应用程序。我需要一个应用程序来发送 vCard。 5th:类似于上面的链接。 :.问题没有解决。 我发现这很有帮助。你可能想挖掘这个应用程序的代码。要以短信形式发送 vCard,您只需遵循编码样式并以短信形式发送:阅读下面的链接。 mosycon.com/SMSCardgithub.com/gordonhuang/RHAddressBook 我跑了一遍代码,但找不到短信发送部分……你能更具体地说明一下编码风格吗?我试过 NSUTF8StringEncoding、NSISOLatin1StringEncoding、NSASCIIStringEncoding 但失败了。 将文件保存为纯文本的.vcf,并通过第一个链接读取文件内容发送短信。当用户点击发送按钮时,它将在其他手机中作为电子名片接收。 我猜您正在尝试通过短信发送文件(即彩信/多媒体消息),这显然无法通过苹果公开的公共 api 代码实现。编号:blog.mugunthkumar.com/coding/…【参考方案3】:

我来回答一下。

不太可能......但它仍然不确定,因为缺乏您的整个端到端期望的更多细节,即设备接收 vcard。您提到了 BlackBerry API 中的 BinaryMessage setPayload() 方法。

Sahil,在阅读了您非常出色的 cmets 和大家的反复讨论后,我现在明白您打算通过 SMS 而不是 MMS 专门接收消息。

您希望发送设备使用 SMS,因此隐含地希望接收设备接收一串文本,并且不想将其与多部分消息中的其他部分分开。具有特殊内容的传入 SMS 消息可以由侦听传入数据的消息传递应用程序解析,在 iOS 的情况下,它可以将 SMS 文本中的 Web 链接和电话号码呈现为活动链接。但是我不知道有没有手机平台在板载消息应用中支持这种方式的vcard。当然不是iOS。也许黑莓操作系统。

我将要求进一步澄清一点(如果您回答,请编辑我的答案):您是否已经开发了一个 BlackBerry 应用程序来将带有有效负载的 SMS 发送到另一部黑莓手机,并且知道它可以在该平台上解析为 vcard,只是想知道这是否可以在黑莓之外实现?

编辑 - 从逻辑上思考,iPhone 设备缺少一些关键的东西,或者添加了一些东西。第二点,黑莓代码要么提交所需的东西,要么不包含任何 iPhone 添加的停止检测 vcard 的内容。

我建议的解决方案是,临时订阅 SMS 网关,发送受控测试,并尽可能捕获通过网关的所有流量。

查看http://www.redoxygen.com/

【讨论】:

我的队友创建了一个 BB 应用程序,可以将 vCard 从 BB 设备发送到另一台设备。如果其他设备是任何智能手机(iPhone、android 或 BB),则 vCard 将作为简单消息接收。但是,如果功能手机或某些诺基亚系列(例如诺基亚 6630)接收到 vCard,则会将其作为准备保存的 vCard 接收。我想提一点的是,没有一个接收设备安装任何外部 vCard 读取应用程序。他们使用内置的 vCard 解析器(如果有)来检测 vCard。总结:BB -> 诺基亚 6630(工作),iPhone -> 诺基亚 6630(失败)

以上是关于苹果手机 |通过简单的短信发送电子名片的主要内容,如果未能解决你的问题,请参考以下文章

苹果手机怎么转发短信

苹果手机怎样转发短信

苹果手机怎么看流量监测

苹果手机如何转发信息

安卓手机如何设置短信拦截

请问关于苹果手机的 APP ID 是啥 怎么查到