2013-10-13 7 views
0

Delphi XE5 (приложение для Android).Отправить намерение использовать почтовое приложение по умолчанию в android

Выполнение небольшого приложения и просто хочу получить обратную связь.

Как я могу отправить намерение использовать простой TEdit для темы, и Tmemo для сообщения и отправить его почтовому клиенту по умолчанию на телефоне конечных пользователей. Спасибо.

+1

Я думаю, что Share Sheet может это сделать. – grant1842

+4

С какой целью вы столкнулись с проблемой? Вызов намерения? Определить, какое намерение использовать? Какой-то специфический для Delphi аспект одной из этих вещей? [Изменить], чтобы сделать ваш вопрос более конкретным, пожалуйста. –

+0

Спасибо за ваш комментарий. Я просматриваю общий лист для прикрепления текста. Я думал, что нам, возможно, придется обратить внимание на это, но пакет акций выглядит многообещающим. – grant1842

ответ

1

Что-то вроде этого должно помочь процессу. Передайте значения из элементов управления пользовательского интерфейса.

uses 
    FMX.Helpers.Android, 
    Androidapi.JNIBridge, 
    Androidapi.JNI.JavaTypes, 
    Androidapi.JNI.GraphicsContentViewText; 
... 
procedure CreateEmail(const Recipient, Subject, Content: string); 
var 
    Intent: JIntent; 
    Recipients: TJavaObjectArray<JString>; 
begin 
    Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_SEND); 
    Recipients := TJavaObjectArray<JString>.Create(1); 
    Recipients.Items[0] := StringToJString(Recipient); 
    Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, Recipients); 
    Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject)); 
    Intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString(Content)); 
    //Intent.setType(StringToJString('plain/text')); 
    Intent.setType(StringToJString('message/rfc822')); 
    //SharedActivity.startActivity(Intent); 
    SharedActivity.startActivity(TJIntent.JavaClass.createChooser(Intent, 
    StrToJCharSequence('Which email app?'))); 
end; 
Смежные вопросы