我正在发送电子邮件文件中的文件。发送的文件但其大小仍为0kb,文件丢失所有数据。 有没有办法做同样的文件仍然是原始内容? 我正在使用以下代码。
File f=new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/SMSZip/a1.rar");
Uri uri = Uri.fromFile(f);
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL , new String[]{"abc77@gmail.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT , "body of email");
i.putExtra(Intent.EXTRA_STREAM, Uri.parse(f.getAbsolutePath()));
try {
startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(getApplicationContext(), "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}
答案 0 :(得分:0)
从您的代码中
i.putExtra(Intent.EXTRA_STREAM, Uri.parse(f.getAbsolutePath()));
这应该是
i.putExtra(Intent.EXTRA_STREAM, uri);
试试这个。
答案 1 :(得分:0)
我已完成从SD卡发送任何带有邮件附件的文件..
Intent sendEmail= new Intent(Intent.ACTION_SEND);
sendEmail.setType("rar/image");
sendEmail.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new
File("/mnt/sdcard/download/abc.rar")));
startActivity(Intent.createChooser(sendEmail, "Email:"));