我正在开发一个应用程序,我通过我的应用程序将.vcf
文件作为附件发送到电子邮件,
我使用以下代码来实现这一点,
try {
path = Environment.getExternalStorageDirectory().toString()+ File.separator +vfile;
FileOutputStream mFileOutputStream = new FileOutputStream(path, true);
mFileOutputStream.write(vCardString.toString().getBytes());
File filevcf = new File(path);
Log.d("file", "file" + filevcf);
} catch (Exception e4) {
Log.d("File", "File Error-->>" + e4);}
我正在使用以下代码.vcf
使用默认电子邮件应用程序将此文件发送到电子邮件。
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("vnd.android.cursor.dir/email");
String to[] = "asd@gmail.com";
sharingIntent.putExtra(Intent.EXTRA_EMAIL, to);
sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(path));
sharingIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
startActivity(Intent.createChooser(sharingIntent, "Send email"));
在这种情况下,我必须将联系人作为.vcf
文件存储在 sd 卡上,然后才能将其发送到电子邮件。如果设备中没有 sd 卡,则会抛出异常。
.vcf
即使设备中没有 sd 卡,我也希望应用程序能够发送文件。有什么方法可以做到这一点,或者是否有任何方法可以将此.vcf
文件存储在其他地方然后发送。