Delphi 11.0 FMX Android应用程序无法在Nox Android 7.1模拟器SDK 25.2.5 32位上启动

fivyi3re  于 2022-11-04  发布在  Android
关注(0)|答案(1)|浏览(287)

我正在编写一个简单的Android应用程序,其中只包含一个用于测试编译的TButton。目标是一个Nox Android 7.1模拟器, Delphi 11.0 IDE将其检测为构建目标。我能够构建应用程序并将其侧加载到Android 7.1模拟器上。启动后,FireMonkey闪屏显示,应用程序关闭,并显示错误“TestApp保持停止"。我不确定为什么应用程序不会启动。使用的是Android 32位SDK 25. 2. 5。

unit MainUnit;
interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FMX.Controls.Presentation, FMX.StdCtrls;

type
  TForm2 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.fmx}

procedure TForm2.Button1Click(Sender: TObject);
begin
  Button1.Text := 'Clicked';
end;

end.

我阅读到 Delphi 11. 0为ARM处理器编译FMX,但我曾认为Nox Android模拟器可以解决这个问题。

program TestApp;

uses
  System.StartUpCopy,
  FMX.Forms,
  MainUnit in 'MainUnit.pas' {Form2};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm2, Form2);
  Application.Run;
end.
zbwhf8kr

zbwhf8kr1#

我使用的是Nox 7.0.3.2,Android 7.1.2 64位(!)。但是 Delphi 应用程序只有在为32位Android目标编译时才能工作。如果您的项目最初是从Delphi 10.x创建的,那么您必须将项目树中的库恢复为系统默认值(目标平台/ Android 32 /库-〉右键单击)。
PS:Delphi-SDK设置中的ADB路径应指向Nox,如“C:\Program Files(x86)\Nox\bin\adb.exe”

相关问题