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

Возможный дубликат:
Электронная почта с внутреннего хранилища

Письмо получает получатель, но без вложения. Вот код, любой эксперт знает, где я ошибся?

Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("text/plain"); intent.putExtra(Intent.EXTRA_EMAIL, new String[] {"email@example.com"}); intent.putExtra(Intent.EXTRA_SUBJECT, "subject here"); intent.putExtra(Intent.EXTRA_TEXT, "body text"); File root = Environment.getExternalStorageDirectory(); File file = new File(root, xmlFilename); if (!file.exists() || !file.canRead()) { Toast.makeText(this, "Attachment Error", Toast.LENGTH_SHORT).show(); finish(); return; } Uri uri = Uri.parse("file://" + file); intent.putExtra(Intent.EXTRA_STREAM, uri); startActivity(Intent.createChooser(intent, "Send email...")); 

Я не получаю сообщение с тостами. Благодарю.

Solutions Collecting From Web of "Android Intent для отправки электронной почты с приложением"

Пытаться:

 Uri.fromFile(file); 

вместо:

 Uri.parse("file://" + file); 

Кроме того, попробуйте text/xml для вашего типа MIME, предполагая, что это XML-файл, как предлагает ваше имя переменной.

Файл, вероятно, не читается в мире.

EDIT: действительно. Попробуйте сделать это:

 Uri uri = Uri.parse("file://" + file.getAbsolutePath());