Отправить файл/строку VCard через Whatsapp или по почте программно

Я пытаюсь отправить VCard из строки или файла через намерения, выбирая приложение, например Whatsapp. У тебя есть идеи?

Спасибо

Редактировать:

Я пробовал этот код. Также с установленным типом text/plain. Переменная vcard представляет собой строку с VCard.

Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setType("text/x-vcard");
intent.putExtra(android.content.Intent.EXTRA_STREAM, vcard);
intent.setPackage(packageName);

Если я отправлю это в Whatsapp, я должен отправить vcard как строку, но не распознать как карту


person Laure_f_o    schedule 18.02.2013    source источник
comment
Я отредактировал свой вопрос.   -  person Laure_f_o    schedule 21.02.2013


Ответы (2)


Попробуйте использовать EXTRA_TEXT вместо EXTRA_STREAM, так как EXTRA_STREAM должен указывать на файл.

Кроме того, пожалуйста, удалите вызов setPackage(). Вы не более важны, чем ваш пользователь. Таким образом, ваш пользователь может контролировать, с каким приложением он делится своей vCard, а не вы.

Кроме того, пожалуйста, свяжитесь с Whatsapp для помощи с их приложением. В частности, учитывая ваш звонок setPackage(), вполне возможно, что Whatsapp просто не поддерживает vCard через ACTION_SEND.

person CommonsWare    schedule 21.02.2013

Попробуй это:

intentShareFile.setDataAndType(Uri.fromFile(vcfFile),"text/x-vcard");
intentShareFile.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+vcfFile));

вместо:

intent.setType("text/x-vcard");
person Rijul    schedule 20.07.2016