H5链接打开APP并跳转到制定界面
2017-08-02 12:34
211 查看
手机如果安装了该应用,就直接打开该应用;如果没有安装该应用,就下载该应用。那么下面就对在浏览器中,用js判断某用户是否安装了该应用,并判断是否打开该应用做个简单的介绍。
那么,怎么判断某用户是否安装了某应用呢?
在这里,先写段js代码,如下:
下面对这段js代码做一个简单的解析:首先试着打开手机端某个app的本地协议;如果超时就转到app下载页,下载该app。
![](https://img-blog.csdn.net/20170802114938592?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluaW5nMTA0MTIwNDI1MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
同时设置白名单:
![](https://img-blog.csdn.net/20170802115027856?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluaW5nMTA0MTIwNDI1MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
此时URL Scheme和白名单设置完成就可以调起APP了。
打开Safari并输入:palmos://
如图1:
![](https://img-blog.csdn.net/20170802124234067?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluaW5nMTA0MTIwNDI1MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
图2:
![](https://img-blog.csdn.net/20170802124637379?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluaW5nMTA0MTIwNDI1MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
最后是跳转到制定界面设置:
在这设置:palmos://action/?param=1
APP启动回调实现
打印数据
那么,怎么判断某用户是否安装了某应用呢?
在这里,先写段js代码,如下:
<script> function isInstalled(){ alert("11") var the_href="https://itunes.apple.com/us/app/%E7%99%BE%E7%BA%AC%E5%81%A5%E5%BA%B7-%E4%B8%93%E5%AE%B6%E9%97%AE%E8%AF%8A-%E5%81%A5%E5%BA%B7%E6%8A%A5%E5%91%8A%E8%A7%A3%E8%AF%BB-%E4%BD%93%E6%A3%80%E9%A2%84%E7%BA%A6/idxxxxxxxx?mt=x";//获得下载链接 window.location.href="palmos://";//打开某手机上的某个app应用 setTimeout(function(){ window.location.href=the_href;//如果超时就跳转到app下载页 },2000); } isInstalled(); </script>
下面对这段js代码做一个简单的解析:首先试着打开手机端某个app的本地协议;如果超时就转到app下载页,下载该app。
"palmos://"是什么呢?它是在iOS客户端设置一个URL Scheme名字,示例设置的是:palmos 如图:
同时设置白名单:
此时URL Scheme和白名单设置完成就可以调起APP了。
打开Safari并输入:palmos://
如图1:
图2:
最后是跳转到制定界面设置:
在这设置:palmos://action/?param=1
//js window.location.href="palmos://action/?param=1";//打开某手机上的某个app应用,传参数
APP启动回调实现
//OC - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { NSLog(@"%@",url); //对url操作处理,并制定跳转实现部分 //...... //跳转实现部分 //...... return YES; }
打印数据
...11:34:03.402228+0800 baiweijk4iphone[1661:958328] handle choose card function:-[BWAppDelegate application:openURL:sourceApplication:annotation:] line:531 content:palmos://action/?param=1 //即:palmos://action/?param=1(打印数据)
相关文章推荐
- 基于应用宝实现微信h5页面中打开本地app,如果没有跳转下载页面的解决方案
- 打开app弹出欢迎界面,然后自动跳转到主界面
- 在UC浏览器打开链接唤醒app,假设没有安装该app,则跳转到appstore下载该应用
- 人脉通分享工能,点击分享到微信或者qq的分享链接打开H5,提示用户用浏览器打开,点击下载,有有app
- 用webview构建能打开微信支付宝支付、自动跳转域名的Android H5APP
- iOS通过链接,应用内打开APP或者跳转APPStore对应下载
- 关于h5界面无法用a标签在app内唤醒支付宝微信跳转
- 在UC浏览器打开链接唤醒app,如果没有安装该app,则跳转到appstore下载该应用
- [ios] 如何调用其他app h5界面调用打开app
- 微信浏览器内打开App Store链接,并跳转到对应的app页面
- 移动端浏览器打开app或者跳转链接
- Android实现通过浏览器点击链接打开本地应用(APP)并拿到浏览器传递的数据
- h5判断移动设备是否安装了某app,有跳转,无则跳至下载页面
- H5打开外部APP
- iOS点击短信中的链接跳转到App
- iOS实现在webview页面内点击链接,跳转指定App
- Android 如何使用短信链接打开APP
- Swift-WKWebView与JavaScript的细节,H5页面跳转原生界面
- 微信内打开网页跳转回之前的界面,让之前的页面刷新