Cómo obtener un vCard (archivo .vcf) en los contactos de Android desde el sitio web

Estoy intentando agregar una vCard desde un enlace web a la lista de contactos del usuario en Android 2.2. Cuando dirijo al usuario al archivo .vcf, todo lo que obtengo es la salida de texto en el navegador móvil. He confirmado que los archivos se están transfiriendo con el texto / v-tarjeta del tipo de MIME. Esto parece que debe ser bastante simple de hacer. ¿Algunas ideas?

AFAIK Android no admite archivos vCard fuera de la caja por lo menos no hasta 2.2.

Puedes usar la app vCardIO para leer archivos vcf de tu tarjeta SD y guardarlos en tus contactos. Así que tienes que guardarlos en su tarjeta SD en el primer lugar e importarlos después.

VCardIO también está disponible a través del mercado.

Ahora hay una funcionalidad de importación en Android ICS 4.0.4. Primero debe guardar su vcf en un almacenamiento (almacenamiento USB o SDcard). Android analizará el almacenamiento seleccionado para detectar cualquier archivo vcf y los importará en la libreta de direcciones seleccionada. La funcionalidad está en el menú de opciones de su lista de contactos.

Sólo para hacerle saber: Acabo de probarlo con un archivo vCard 2.1 creado de acuerdo con la especificación vCard 2.1 . Descubrí que vCard 2.1, a pesar de ser una versión antigua, ya cubría todo lo que necesitaba, incluyendo una foto codificada en base64 y conjuntos de caracteres internacionales.

Funcionó perfectamente en mi dispositivo Android 4.1.1 sin modificar (Galaxy S3). También trabajó en un viejo iPhone 3GS (iOS 5, a través de la aplicación Evernote ) y el viejo dispositivo Android 2.1 sin modificar de un compañero de trabajo. Sólo es necesario establecer la Content-disposition como se sugiere anteriormente.

Un problema menor fue que activé la descarga de VCF utilizando un código QR , que escaneé con la aplicación Microsoft Tag . Esa aplicación me dijo Android no podía manejar el text/x-vcard tipo de medios (o simplemente text/vcard , no importa). Una vez que abrí el enlace en un navegador web (probé Chrome y el navegador predeterminado de Android), funcionó bien.

Esto se puede utilizar para descargar el archivo a su tarjeta SD Probado con Android versión 2.3.3 y 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> 

Estoy corriendo 2.2 y no hay ningún cambio, los informes de otros en 2.3 dicen lo mismo. Android (error) no maneja un archivo .vcf ni un enlace a dicho archivo en una página web a través del puerto 80, ni a través de encabezados http ni de streaming directo. Simplemente no es apoyado en absoluto.

Lo que también he notado es que usted tiene que guardar el archivo como Unicode , UTF-8 , no BOM en un formato de Windows con CRLF (Carriage Return, Line Feed). Porque si no lo hace, la importación se romperá. (Diciendo algo sobre caracteres extraños en el archivo)

Buena suerte

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.