2012-12-17 12 views
10

iOS 5以降では、AppleはABPersonCreatePeopleInSourceWithVCardRepresentationメソッドを導入しました。これは、アドレス帳にvCardを供給し、作成された人物のABRecordRefを取り戻すのに非常に役立ちます。iOSデバイスのvCard形式を修正しますか?

しかし、標準のvCardをアドレス帳に追加しようとしているうちにApple vCardが(少なくとも少し)標準のvCardと異なるようです。 vCardのアップルフォーマットがどこにあるべきかを詳述するページがありますか?

ありがとうございます!

+0

どのような.vcfファイルに問題があったか、特定のフィールドなどですか?現時点で唯一見つけたのは、vCardのファイルサイズが256KB未満であることです。 –

+1

@ NikolayO。ほとんどが 'PHOTO'分野です。 vcard 2.1とvcard 3.0の間のフォーマットの組み合わせが期待されるようです。 – Andrei

+0

サンプルのvcardファイルを添付できますか? (PS。doc:Address BookはvCard version 3.0をサポートしています) –

答えて

7

ABPersonCreatePeopleInSourceWithVCardRepresentationドキュメントの状態はvCard version 3 is the supported protocolです。残念ながら、標準的なvCardに問題がある場合、私はどのように手助けするのか分かりません - 私は検索のかなりのビット(その賞金は良いモチベーションです:P)と、それ以上の情報を見つけることができませんでした。

問題のAPIを使用している場合がありますQRスキャナーアプリを(使用してiPhone 4の上に、私がテストするために私に私のiPhoneを持っていないが、 this guyクレームが成功し、次をインポートしているために、v2.1のvCardを

)。 The 3.0 spec is a superset of the 2.1 spec - このvCardを試しても問題がないか教えてください。

BEGIN:VCARD 
VERSION:2.1 
N:;Company Name 
FN:Company Name 
ORG:Company Name 
TEL;WORK;VOICE;PREF:+16045551212 
TEL;WORK;FAX:+16045551213 
ADR;WORK;POSTAL;PARCEL;DOM;PREF:;;123 main street;vancouver;bc;v0v0v0;canada 
EMAIL;INTERNET;PREF:[email protected] 
URL;WORK;PREF:http://www.example.com/ 
NOTE:http://www.example.com/ 
CATEGORIES:BUSINESS,WORK 
UID:A64440FC-6545-11E0-B7A1-3214E0D72085 
REV:20110412165200 
END:VCARD 

あなたは公式3.0の仕様herehereを読むことができます。

最後の溝ソリューションとして、plenty of vCard parsers out thereがあります。これは単純なプロトコルです。あなたはこれらのいずれかを取る(またはあなた自身で書く)だけで、ABPersonCreatePeopleInSourceWithVCardRepresentationを使用して連絡先をアドレス帳に手動で追加することができます。

+0

Brilliant。それは良い情報です。ありがとう。 – Andrei

+0

@aaronsnoswell、vCard 4.0に関連するAppleの類似のドキュメントを知っていますか? – mac9416

1

私は、.vcfファイルを生成する後方互換性のあるVCard classを作成しました。しかしiOSデバイス< iOS 8の場合、クラスは古いiOSバージョンで動作する唯一の方法であるため、クラスは.icsファイルにエクスポートされます(VCardはVCalendarファイルでラップされます)。

数千人が使用しています! GitHub

関連する問題