博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Delphi XE5 android openurl(转)
阅读量:6828 次
发布时间:2019-06-26

本文共 1536 字,大约阅读时间需要 5 分钟。

unit OpenViewUrl;interface // URLEncode is performed on the URL// so you need to format it   protocol://pathfunction OpenURL(const URL: string; const DisplayError: Boolean = False): Boolean;implementationuses IdURI, SysUtils, Classes, FMX.Dialogs,{
$IFDEF ANDROID} FMX.Helpers.Android, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.Net, Androidapi.JNI.JavaTypes;{
$ELSE}{
$IFDEF IOS}iOSapi.Foundation, FMX.Helpers.iOS;{
$ENDIF IOS}{
$ENDIF ANDROID}function OpenURL(const URL: string; const DisplayError: Boolean = False): Boolean;{
$IFDEF ANDROID}var Intent: JIntent;begin // There may be an issue with the geo: prefix and URLEncode.// will need to research Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW, TJnet_Uri.JavaClass.parse(StringToJString(TIdURI.URLEncode(URL)))); try SharedActivity.startActivity(Intent); exit(true); except on e: Exception do begin if DisplayError then ShowMessage('Error: ' + e.Message); exit(false); end; end;end;{
$ELSE}{
$IFDEF IOS}var NSU: NSUrl;begin // iOS doesn't like spaces, so URL encode is important. NSU := StrToNSUrl(TIdURI.URLEncode(URL)); if SharedApplication.canOpenURL(NSU) then exit(SharedApplication.openUrl(NSU)) else begin if DisplayError then ShowMessage('Error: Opening "' + URL + '" not supported.'); exit(false); end;end;{
$ELSE}begin raise Exception.Create('Not supported!');end;{
$ENDIF IOS}{
$ENDIF ANDROID}end.

 

转载于:https://www.cnblogs.com/china1/p/3415472.html

你可能感兴趣的文章
SVN学习总结(1)——SVN简介及入门使用
查看>>
浅谈linux性能调优之五:调优软raid
查看>>
Android sdk下载缓慢解决方式
查看>>
IBM TPC强化中国建设银行存储管理能力
查看>>
常用ftp子命令的总结
查看>>
正则表达式
查看>>
在 JS 中使用 fetch 更加高效地进行网络请求
查看>>
javascript 分页算法
查看>>
android手机root后的安全问题
查看>>
bat改ip
查看>>
SpringBoot之在Servlet2.5容器中部署war应用
查看>>
项目申请文档提纲
查看>>
加密解密第二章:ollydbg用法
查看>>
百万PV网站架构
查看>>
N26-第四周作业
查看>>
在vmware安装Ubuntu桌面软件
查看>>
MySQL之用户和权限管理
查看>>
常用的命令的使用方法
查看>>
使用HeartBeat实现高可用HA的配置过程详解
查看>>
最常用的四种大数据分析方法
查看>>