Намерение Android для отправки электронного письма с вложением [дубликат]
Возможный дубликат:Электронная почта из внутреннего хранилища
Получатель получает электронное письмо, но без вложения. Вот код, любой эксперт знает, где я ошибся?
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..."));
Я не получаю никаких всплывающих сообщений.Спасибо.
Переведено автоматически
Ответ 1
Файл, вероятно, недоступен для чтения во всем мире.
РЕДАКТИРОВАТЬ: действительно. Попробуйте сделать это:
Uri uri = Uri.parse("file://" + file.getAbsolutePath());