Как вставить vCard (файл .vcf) в контакты Android с сайта - PullRequest
13 голосов
/ 08 декабря 2010

Я пытаюсь добавить визитную карточку из веб-ссылки в список контактов пользователя на Android 2.2.Когда я направляю пользователя в файл .vcf, все, что я получаю, - это вывод текста в мобильном браузере.Я подтвердил, что файлы передаются с текстом / v-картой MIME-типа.Кажется, это должно быть довольно просто сделать.Есть идеи?

Ответы [ 7 ]

5 голосов
/ 08 декабря 2010

AFAIK Android не поддерживает файлы vCard из коробки, по крайней мере, до 2.2.

Вы можете использовать приложение vCardIO , чтобы читать файлы vcf с вашей SD-карты и сохранять вваши контакты.Поэтому вы должны сначала сохранить их на SD-карте, а затем импортировать.

vCardIO также доступен на рынке.

4 голосов
/ 02 декабря 2012

Просто чтобы вы знали: я только что попробовал использовать файл vCard 2.1, созданный в соответствии со спецификацией vCard 2.1 .Я обнаружил, что vCard 2.1, несмотря на свою старую версию, уже охватывал все, что мне нужно, включая фотографии в кодировке base64 и международные наборы символов.

Он отлично работал на моем неизмененном устройстве Android 4.1.1 (Galaxy S3),Он также работал на старом iPhone 3GS (iOS 5, через приложение Evernote ) и немодифицированном старом устройстве Android 2.1 коллеги.Вам нужно только установить Content-disposition на attachment, как указано выше.

Небольшая проблема заключалась в том, что я запустил загрузку VCF с помощью QR-кода , который я отсканировал с помощью Приложение Microsoft Tag .Это приложение сообщило мне, что Android не может обрабатывать text/x-vcard тип носителя (или просто text/vcard, неважно).После того, как я открыл ссылку в веб-браузере (я пробовал Chrome и браузер Android по умолчанию), он работал нормально.

4 голосов
/ 22 июня 2012

В Android ICS 4.0.4 теперь есть функция импорта.

Сначала необходимо сохранить файл .vcf в хранилище (USB-накопитель или SD-карта). Android отсканирует выбранное хранилище для обнаружения любого файла .vcf и импортирует его в выбранную адресную книгу. Функциональность находится в меню параметров вашего списка контактов.

! Примечание: Будьте осторожны при этом! Android импортирует ВСЕ , то есть .vcf в вашем хранилище. Это все или ничего, и следствием может быть разрушение вашей адресной книги.

3 голосов
/ 24 июля 2012

Это можно использовать для загрузки файла на SD-карту Протестировано с версией Android 2.3.3 и 4.0.3

======= php =========================

<?php
     // this php file (example saved as name is vCardDL.php) is placed in my html subdirectory
     //  
     header('Content-Type: application/octet-stream');
     // the above line is needed or else the .vcf file will be downloaded as a .htm file
     header('Content-disposition: attachment; filename="xxxxxxxxxx.vcf"');
     // 
     //header('Content-type: application/vcf'); remove this so android doesn't complain that it does not have a valid application
     readfile('../aaa/bbb/xxxxxxxxxx.vcf');
     //The above is the parth to where the file is located - if in same directory as the php, then just the file name
?>

======= html ========================

<FONT COLOR="#CC0033"><a href="vCardDL.php">Download vCARD</A></FONT>
2 голосов
/ 06 июня 2018

У меня были проблемы с импортом файла VERSION:4.0 vcard на Android 7 (LineageOS) со стандартным приложением Контакты.

Так как это входит в число самых популярных поисковых запросов по запросу "формат Android vcard не поддерживается", я просто хотел отметить, что мне удалось импортировать их с помощью приложения Простые контакты ( Воспроизвести или F-Droid ).

2 голосов
/ 29 марта 2011

У меня работает 2.2 и изменений нет, отчеты от других на 2.3 говорят о том же. Android (ошибка) не обрабатывает .vcf, ни ссылку на такой файл на веб-странице через порт 80, ни через заголовки http или прямую потоковую передачу. Это просто не поддерживается вообще.

1 голос
/ 20 декабря 2010

Я также заметил, что вы должны сохранить файл как Unicode, UTF-8, без BOM в формате Windows с CRLF (возврат каретки, перевод строки). Потому что, если вы этого не сделаете, импорт прекратится. (Сказать что-то о странных символах в файле)

Удачи :) Sid

...