如何在Delphi-XE5 Firemonkey应用程序中关闭Android应用程序?

Edi*_*ičs 8 delphi android firemonkey delphi-xe5

我有这段代码

procedure TFormMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
  msg: String;
begin
  msg := 'Do you really want to exit?';

  if MessageDlg(msg, TMsgDlgType.mtConfirmation,
    [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0) = mrNo then
    CanClose := False
  else
    CanClose := True; { FIXME: don't want to work on Android }
end;
Run Code Online (Sandbox Code Playgroud)

它在Windows上运行完美.如果我选择"是",申请将关闭.但是,应用程序不会在Android上关闭.我做错了什么?

Mar*_*ams 13

关闭最后一个表单时关闭应用程序是Windows的事情.Android应用将继续运行.

要在Android上关闭应用,请SharedActivity.finish从本FMX.Helpers.Android机致电.

  • 或者``FMX.TApplication.Terminate()`方法,它也完成Android上的Activity(并在其他平台上执行等效操作). (2认同)

小智 7

uses 
  FMX.Platform.Android;

procedure TForm2.SpeedButton1Click(Sender: TObject); 
begin 
  MainActivity.finish; 
end; 
Run Code Online (Sandbox Code Playgroud)