在H5中唤起APP,唤起失败进入APP下载页

更新日期: 2019-10-04阅读: 2.7k标签: app

在H5中唤起APP原理:通过Scheme协议打开APP Scheme的组成:scheme:path[#fragment]


一、直接使用协议打开APP,打开失败进入下载页

<div class="btn" onClick="openApp">打开App</div>

function openApp() {
    // 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP
    // 每个APP有自己scheme协议名称,例如微信是weixin:// 
    // 否则跳转APP下载页
    var ifr = document.createElement('iframe');
    ifr.src = 'APP协议://打开页面路径';
    ifr.style.display = 'none';
    document.body.appendChild(ifr);
    window.setTimeout(function(){
        downloadAPP()
        document.body.removeChild(ifr);
    },2000)
}

function downloadAPP() {
    // 判断是Android还是iOS
    const u = navigator.userAgent;
    let system = '';
    if (u.indexOf('Android') > -1 || u.indexOf('Adr') > -1) {
        system = 'Android';
    } else if (!!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)) {
        system = 'iOS';
    } else {
        system = 'unknown';
    }
    // 根据系统不同,跳转不同的下载APP地址
    if(system === 'Android') {
        // TODO:这里还可以根据手机厂商的不同跳转各自厂商的应用商店
        window.location = "安卓下载地址"
    } else if(system === 'iOS') {
        window.location = "iOS商店地址"
    }
}


二、使用第三方插件,原理还是一样的

https://github.com/suanmei/callapp-lib,具体使用见github

import CallApp from 'callapp-lib';

function openApp(){     
    const option = {
      scheme: {
        protocol: 'matchu',
      },
      appstore: 'appstore的应用地址',
      yingyongbao: '应用宝地址',
      fallback: '打开失败后的页面',
      timeout: 3000,
    };
    const lib = new CallApp(option);
    lib.open({
        path: '打开APP的指定页面',
    });  
}

链接: https://www.fly63.com/article/detial/5823

APP和小程序互相跳转

随大流吧。微信小程序出了这么久,现在才学习下。app和小程序互相跳转:1、App主动发起小程序卡片分享到微信,微信点击打开小程序,这时的小程序可以打开App,2、App主动发起打开小程序,这时的小程序可以打开App

几种常见的APP开发模式的优缺点

常见的开发模式有6种(Native App,Web App,Hybrid App,Weex,React Native、Flutter)

创建一个成功的App前要考虑的5个要点

在智能机时代,相比浏览网页而言,人们一般更喜欢喜欢使用手机应用。这种趋势就导致了成千上万的APP在Google Play 和 Apple Store 平台的诞生。有一些企业想要通过创建APP去提升他们的业务,其他人也想要通过创建APP去获得收益

前端需要知道:App开发的最佳跨平台框架

当今移动端主要有安卓、IOS,以及最新的鸿蒙等系统,作为企业而言,尤其是中小企业在低成本的情况下,如何实现多端兼容,快速开发?这篇文章主要介绍当前比较常用的跨平台应用开发框架

前端实现iPhone绕过AppStore从浏览器安装App

都知道 iPhone 苹果手机应用只能通过 AppStore 进行安装,测试包只能通过官方提供的 TestFlight 等工具安装,而且通常有较长的审核流程,无法及时更新安装包

H5如何实现唤起APP

写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载

ios获取app url地址 - 如何获取苹果appstore的应用链接?

在AppStore,每个应用都会有一个AppleID,包括还没有上线的应用。打开AppStore,点开我们的App,就会在网址上看到一串数字,这一串数字就是我们的Apple ID了。

一款 IOS 端休闲益智类,数字小游戏集

益智小游戏有哪些?休闲益智小游戏一直以来都深受玩家的喜爱,它不仅有趣,还能锻炼玩家的思维能力,今天小编就为大家带来了一款IOS益智数字类小游戏集,APP界面简洁,满足你的逻辑挑战,体验数字的魅力

H5 如何实现唤起 APP

写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载。这里就涉及到了H5与Native之间的交互,为什么H5能够唤起APP并且跳转到对应的页面?

个人如何申请软著

目前软著已实行无纸化,不需要再邮寄纸质材料,但是之前需要邮寄的申请表还是需要盖章或签字电子版上传。实行无纸化之后的首批证书还没有下发,所以具体的下证率,加急的下证情况也都不清楚

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!