Отправка контактного файла.vcf

Я хочу отправить контактный файл VCF, используя Bluetooth и электронную почту. Я пытался, но я продолжаю получать ошибки. Пожалуйста помоги. Спасибо

Это мой метод sendByBluetooth.

public void sendByBluetooth(){
    Intent intent = new Intent();  
    intent.setAction(Intent.ACTION_SEND);  
    intent.setType("image/png");
    intent.putExtra(Intent.EXTRA_STREAM, Uri.parse(storage_path) );  
    startActivity(intent);
}

Это мой метод emailContact.

public void emailContact() {     
    Intent sendIntent = new Intent(Intent.ACTION_SEND); 
    // Add attributes to the intent 
    sendIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    sendIntent.putExtra(Intent.EXTRA_SUBJECT,"subject line"); 
    sendIntent.putExtra(Intent.EXTRA_TEXT,"Body of email"); 
    sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(storage_path))); 
    sendIntent.setType("vnd.android.cursor.dir/email"); 

    startActivity(Intent.createChooser(sendIntent,"Email:"));       

}

Пожалуйста помоги! Благодарю.

1 ответ

Для Bluetooth вы можете установить тип как intent.setType("text/x-vcard");

public void sendByBluetooth(){
    Intent intent = new Intent();  
    intent.setAction(Intent.ACTION_SEND);  
    intent.setType("text/x-vcard");
    intent.putExtra(Intent.EXTRA_STREAM, Uri.parse(storage_path) );  
    startActivity(intent);
}

и для электронной почты вы можете использовать

String filelocation="/mnt/sdcard/contacts.vcf";    
Intent emailIntent = new Intent(Intent.ACTION_SEND);
// set the type to 'email'
emailIntent .setType("vnd.android.cursor.dir/email");
String to[] = {"asd@gmail.com"};
emailIntent .putExtra(Intent.EXTRA_EMAIL, to);
// the attachment
emailIntent .putExtra(Intent.EXTRA_STREAM, filelocation);
// the mail subject
emailIntent .putExtra(Intent.EXTRA_SUBJECT, "Subject");
startActivity(Intent.createChooser(emailIntent , "Send email..."));

Просто примечание: файл.vcf должен быть на вашей SD-карте

Другие вопросы по тегам