【问题标题】:How do I make my Delphi code compatible with multiple platforms?如何使我的 Delphi 代码与多个平台兼容?
【发布时间】:2013-12-20 14:45:06
【问题描述】:

我目前正在开发一个移动应用程序,我当前的目标平台是 Android(因为那是我目前拥有的设备)。但是,我想尝试使其与 IOS 和 Windows(测试)兼容

我当前退出应用程序的代码使用:

uses FMX.Platform.Android


procedure TfrmMain.btnExitClick(Sender: TObject);
begin
 MainActivity.finish;
end;

如何使它与 IOS 或 Windows 兼容(测试时)?仅使用 Close 在 Android 中不起作用。

【问题讨论】:

标签: android ios delphi firemonkey delphi-xe5


【解决方案1】:

您可以使用conditional compilation编写多平台代码:

{$IFDEF MSWINDOWS}
    // Do something...
{$ENDIF}
{$IFDEF MACOS}
    // Do something...
{$ENDIF}
{$IFDEF Android}
    // Do something...
{$ENDIF}
{$IFDEF iOS}
    // Don't do anything
{$ENDIF}

此外,请查看上一个问题以了解更多详细信息,尤其是关于关闭 Android 上的应用程序: How to close android app in Delphi-XE5 Firemonkey application?

【讨论】:

  • 嗨,Marcss,如果没有跨平台共享的例程,我认为这对我有帮助......如果没有,那么我将需要每个平台的这些例程。我在问题中为 Android 分享的例程取自您提供的同一个链接。
【解决方案2】:

Apple 不允许 make 终止您的应用程序。因为,只有用户自己决定何时关闭应用程序。但是,如果您关闭应用程序,Apple 不会在 App Store 中获取您的应用程序。

您可以使用 Halt 程序。但我不建议这样做。

谢谢

【讨论】:

  • 我相信这就是为什么我的关闭应用程序出现在上面的 btnExit 事件中。它由用户控制。我需要一个跨平台兼容的例程,或者我需要一个离开来确定哪个平台并调用特定于平台的例程
猜你喜欢
  • 1970-01-01
  • 2011-05-29
  • 2011-07-27
  • 2014-09-03
  • 1970-01-01
  • 1970-01-01
  • 2015-03-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多