Проблемы с прикреплением файла к намерению электронной почты в Android

Я знаю, что этот вопрос уже задавался в нескольких вариантах, но мой вопрос больше связан с методом setType.

Я пытаюсь прикрепить файл XML к электронному письму, которое я начинаю с намерения. Код:

File exportPath = (File) data.getExtras().getSerializable("Path");
Log.w(TAG, Uri.fromFile(exportPath).toString());
Intent email = new Intent();
email.setType("application/xml");
email.putExtra(Intent.EXTRA_EMAIL, new String[] {user_email});
email.putExtra(Intent.EXTRA_SUBJECT, "Test");
email.putExtra(Intent.EXTRA_TEXT, "Text");
email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(exportPath));

startActivity(Intent.createChooser(email, "Mail job"));

Получатель, тема и текст приходят правильно, отсутствует только вложение.

Результат: Log.w(TAG, Uri.fromFile(exportPath).toString()); это файл:///mnt/sdcard/SDS2Mobile/model2.xml

Я думаю, моя проблема в том, что я неправильно устанавливаю тип, но не могу найти правильный тип для файлов XML. У кого-нибудь есть идеи?


person Lunchbox    schedule 13.03.2011    source источник
comment
Я пытался отправить файл sqlite db по электронной почте, и мне было труднее всего. Ваша часть кода Uri.fromFile(exportPath) исправила это для меня. Бесконечно благодарен!   -  person Opy    schedule 20.11.2011
comment
Вы должны создать свое намерение с помощью команды отправки, иначе я не смог бы заставить его работать. Intent email = new Intent(Intent.ACTION_SEND);   -  person AlexIIP    schedule 21.09.2012


Ответы (1)


Я нашел это! использование «text/Message» в setType() дало правильные результаты.

person Lunchbox    schedule 13.03.2011