概述
和安卓与IOS约定方法isMyApp()
思想:如果能调到这个方法说明在APP内点击则提供h5share(id, goodType)方法给安卓与IOS继续执行,如果调不到报错了,则说明不是APP内打开的抛出异常执行跳转到链接去下载,如果手机有APP会直接打开。其中id, goodType为方法传值
调安卓方法: android.isMyApp();
调IOS方法: window.webkit.messageHandlers.isMyApp.postMessage();
安卓调H5(为了传值给安卓): window.android.h5share(id, goodType); //id, goodType要传的值,h5share约定的方法名
安卓调IOS(为了传值给IOS): window.android.h5share(id, goodType);
跳去下载页面:
安卓:window.location.href = "https://a.app.qq.com/o/simple.jsp?pkgname=com.jingdian.red&fromcase=40003"; //ur;l改为安装的url地址
IOS:window.location.href="https://apps.apple.com/us/app/%E9%BA%A6%E5%AE%B6%E9%B8%BF%E5%8C%85/id1390425959?l=zh&ls=1";
如果手机有app则打开,没有跳下载APP页面,h5调安卓,ios方法,用于分享出去的h5链接
需要拷贝的来这:
good_detail(item) {
var id = item.goodId
var goodType = item.goodType
var data = {
id: item.goodId,
goodType: item.goodType
}
const { android } = window;
var u = navigator.userAgent;
if (u.indexOf("Android") > -1 || u.indexOf("Linux") > -1) {
//
try{
//调app方法,有这个方法就传值
android.isMyApp();
window.android.h5share(id, goodType);
}catch(err){
window.location.href = "https://a.app.qq.com/o/simple.jsp?pkgname=com.jingdian.red&fromcase=40003";
}
} else {
try{
//调app方法,有这个方法就传值
window.webkit.messageHandlers.isMyApp.postMessage();
//
window.webkit.messageHandlers.h5share.postMessage(data);
}catch(err){
// 报错就跳转
window.location.href = "https://apps.apple.com/us/app/%E9%BA%A6%E5%AE%B6%E9%B8%BF%E5%8C%85/id1390425959?l=zh&ls=1";
}
}
},
最后
以上就是粗暴冬日为你收集整理的点击Html链接,如果手机有app则打开,没有跳下载APP页面,h5调安卓,ios方法,用于分享出去的h5链接的全部内容,希望文章能够帮你解决点击Html链接,如果手机有app则打开,没有跳下载APP页面,h5调安卓,ios方法,用于分享出去的h5链接所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复