一次偶然的机会,Embarcadero 的某个人在两天前发布了一个代码片段来执行此操作。
如果您使用的是 XE4,请查看示例,您可以找到最终代码所在的一个(抱歉,不确定名称):
OpenURL('http://www.embarcadero.com');
这使用了 XE4 FireMonkey 框架和 David Clegg 编写的类助手,在示例中可用。
如果你使用的是旧版本的 FireMonkey,你可以使用比较麻烦的代码:
function SharedApplication: UIApplication;
begin
Result := TUIApplication.Wrap(TUIApplication.OCClass.sharedApplication);
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
SharedApplication.openURL(TNSURL.Wrap(TNSURL.OCClass.URLWithString(NSSTR(PChar(String('http://www.embarcadero.com'))))));
end;
(署名:代码片段均从链接的博客文章中复制。)
还有一个来自 FireMonkey 早期的非常古老的论坛帖子,展示了如何解决这些问题(基本上,字符串 <-> NSString <-> NSURL),虽然它有点过时 - 正如你所看到的上面的代码,FireMonkey 已经非常成熟了——它可以让我们深入了解代码的根本原因。