Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey, Delphi Android, Delphi IOS

Launch A URL Or Document On IOS and Android With Delphi Firemonkey

| Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey Delphi Android Delphi IOS

ShellExecute On Android and IOS With Firemonkey | Delphi 11 10 XE8 XE7 XE Seattle Berlin Tokyo Rio Firemonkey Delphi Android Delphi IOSIf you are use to using Windows you probably know to use ShellExecute() to launch a browser or other document outside of your application. To build a cross platform app which does the same on IOS and Android you will need to use code similar to this which uses the _system() function found in Posix.Stdlib. Whiler on StackOverflow came up with this solution:

unit fOpen;

interface

uses
{$IFDEF MSWINDOWS}
  Winapi.ShellAPI, Winapi.Windows;
{$ENDIF MSWINDOWS}
{$IFDEF POSIX}
  Posix.Stdlib;
{$ENDIF POSIX}

type
  TMisc = class
    class procedure Open(sCommand: string);
  end;

implementation

class procedure TMisc.Open(sCommand: string);
begin
{$IFDEF MSWINDOWS}
  ShellExecute(0, 'OPEN', PChar(sCommand), '', '', SW_SHOWNORMAL);
{$ENDIF MSWINDOWS}
{$IFDEF POSIX}
  _system(PAnsiChar('open ' + AnsiString(sCommand)));
{$ENDIF POSIX}
end;

end.
TMisc.Open('http://www.fmxexpress.com/');


Check out all of the answers about ShellExecute() on IOS and Android.

Update: Here is a version of TMisc that uses native API code to launch on Android and IOS. Download the combination of TMisc and native API code to launch URLs.

Exit mobile version