Я хочу, чтобы мое приложение для Android отправляло файл с одного устройства на другое устройство различными способами (почта, Bluetooth, что угодно).Вложение электронной почты не имеет правильного содержимого Тип контента
Мой первый прецедент - электронная почта. Это код, который я использую для создания моего намерения SEND.
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("text/xml");
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.share_list)));
Когда я бегу это на тренажере (Android 2.1), раздел прикрепление полученной почты гласит:
Content-Type: ;
Однако, когда я бегу это на моем Galaxy Nexus (Android 4.2.2), секция крепления гласит:
Content-Type: application/tpl;
Это может быть потому, что пропущенный URI заканчивается в .tpl
.
Это то, что я ожидал бы:
Content-Type: text/xml;
Я пропускаю что-то здесь? Важно, чтобы почтовое вложение имело правильный тип MIME, поэтому я могу использовать фильтры намерений для принимающей стороны приложения.
Вы пытались прикрепить один из этих файлов с помощью приложения электронной почты и посмотреть, что читает раздел вложения? Я думаю, вы получите то же самое. –
Это зависит только от клиента электронной почты. Как упоминалось @ Marina.Eariel, попробуйте подключить файлы непосредственно от разных почтовых клиентов, и вы можете быть удивлены результатами. Способ справиться с этим состоит в том, чтобы иметь пользовательское расширение файла для вашего приложения и использовать фильтр намерений для определения того, какие файлы он должен обрабатывать. – adrianp
это приложение работает в устройстве не эмулятор, потому что в эмуляторе нет электронной почты app.try это в устройстве. –