0

德尔福 XE5(安卓应用)。

做一个小应用程序,只是想得到一些反馈。

如何发送意图以使用简单的 TEdit for Subject 和 Tmemo for Message 并将其发送到最终用户手机上的默认邮件客户端。谢谢。

4

1 回答 1

2

像这样的东西应该有助于这个过程。传入来自 UI 控件的值。

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;
于 2013-10-13T10:27:50.097 回答