如何最小化 Delphi 上的 Android 应用程序?
How to minimize an Android app on Delphi?
我试过了:
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char;
Shift: TShiftState);
begin
if Key = vkHardwareBack then begin
Key := 0;
Form1.WindowState := TWindowState.wsMinimized; // Also tried Application.MainForm
end;
end;
但是当你第一次点击时屏幕变黑,当你点击第二次时应用程序关闭。如何避免这种情况?
android 方法是切换到桌面,而不是尝试最小化您的应用程序。至少有两种方法可以实现:
第一种可能是调用:
MainActivity.movetasktoback(true);
第二种可能是:
var
Intent: JIntent;
begin
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_MAIN);
Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME);
tandroidhelper.activity.startActivity(Intent);
但是我注意到,在 Delphi 下,这两种方式在重新激活时似乎都会导致黑屏应用程序。
我试过了:
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char;
Shift: TShiftState);
begin
if Key = vkHardwareBack then begin
Key := 0;
Form1.WindowState := TWindowState.wsMinimized; // Also tried Application.MainForm
end;
end;
但是当你第一次点击时屏幕变黑,当你点击第二次时应用程序关闭。如何避免这种情况?
android 方法是切换到桌面,而不是尝试最小化您的应用程序。至少有两种方法可以实现:
第一种可能是调用:
MainActivity.movetasktoback(true);
第二种可能是:
var
Intent: JIntent;
begin
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_MAIN);
Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME);
tandroidhelper.activity.startActivity(Intent);
但是我注意到,在 Delphi 下,这两种方式在重新激活时似乎都会导致黑屏应用程序。