Перейти к содержанию
  • 0
Satellite

[Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)

Вопросы

Имеется данный код, тема сообщения "EXTRA_SUBJECT" передаётся нормально, а вот "EXTRA_EMAIL" не передаётся.

var
  Intent: JIntent;
  Uri: Jnet_Uri;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_SEND);
  Intent.setType(StringToJString('vnd.android.cursor.dir/email'));
  Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, StringToJString('dev@user.com'));
  Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString('Feedback'));
  SharedActivity.startActivity(Intent);
end;

Поделиться сообщением


Ссылка на сообщение

Рекомендуемые сообщения

  • 0

так попробуй, не факт конечно

...StringToJString('email:dev@user.com'));
...StringToJString('emailto:dev@user.com'));

Поделиться сообщением


Ссылка на сообщение
  • 0

Разобрался, в общем только так передаётся нормально:

procedure TfmSettings.CreateEmail(Const Recipient, Subject: string);
var
  Intent: JIntent;
  JRecipient: TJavaObjectArray<JString>;
begin
  JRecipient := TJavaObjectArray<JString>.Create(1);
  JRecipient.Items[0] := StringToJString(Recipient);

  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_SEND);
  Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, JRecipient);
  Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject));
  Intent.setType(StringToJString('vnd.android.cursor.dir/email'));
  SharedActivity.startActivity(Intent);
end;

Поделиться сообщением


Ссылка на сообщение
  • 0

Всё правильно сделали, я как-то проморгал вашу тему, сейчас только увидел.

Посылать сообщение можно сразу нескольким адресатам, в java - это тип "String[]", на Delphi - это "TJavaObjectArray<JString>"

Про соответствие типов я писал тут: http://delphifmandroid.blogspot.ru/2014/07/java.html (пункт 4)

Поделиться сообщением


Ссылка на сообщение

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...