uniapp H5唤起手机App 中间下载页

我这里直接是打开中间下载页,在下载页判断手机是否已存在App,有则唤起App,没有则可点击下载按钮下载app。

唤起App的关键语句是:window.location.href =  scheme 

Scheme链接格式样式:
[scheme]://[host]/[path]?[query]

直接放全部代码:

<template><div class="page"><div class="container"><div class="img-box"><img src="@/static/img/logo.png"></div><div class="title">xxxApp</div><div v-show="browser.versions.android" class="button" @tap="downloadAndroid">点击下载</div><div v-show="browser.versions.ios" class="button" @tap="downloadIOS">点击下载</div></div><div class="cover"><div class="cover-content"><div class="cover-text"><div>请点击右上角按钮</div><div>选择“在浏览器打开”来下载</div></div><div class="cover-img"><img src="@/static/img/download.png" alt=""></div></div></div></div>
</template><script>
import config from "@/config/config"
export default {data(){return{config,cover: '',browser: '',id: ''}},onLoad(val){this.id = val.id},onShow(){this.init()},methods: {init(){this.$nextTick(()=>{this.cover = document.querySelector(".cover");this.isWeixin();});this.browser = {versions: (function () {var u = navigator.userAgent,app = navigator.appVersion;return {trident: u.indexOf("Trident") > -1, //IE内核presto: u.indexOf("Presto") > -1, //opera内核webKit: u.indexOf("AppleWebKit") > -1, //苹果、谷歌内核gecko: u.indexOf("Gecko") > -1 && u.indexOf("KHTML") == -1, //火狐内核mobile:!!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端android: u.indexOf("Android") > -1 || u.indexOf("Linux") > -1, //android终端或者uc浏览器iPhone: u.indexOf("iPhone") > -1 || u.indexOf("Mac") > -1, //是否为iPhone或者QQHD浏览器iPad: u.indexOf("iPad") > -1, //是否iPadwebApp: u.indexOf("Safari") == -1, //是否web应该程序,没有头部与底部weixin: u.match(/(MicroMessenger)/i), // 是否微信内打开};})(),};// console.log('this.browser', this.browser);if (this.browser.versions.ios) {window.open(config.downloadIOSLink, "_blank");}this.openApp()},/*** 打开app 仅在h5生效 使用ifream唤醒app*/openApp() {let t = `${config.schemeLink}`;if(this.id){  // 如果需要跳转到其他H5页面,可以在这里修改一下t = `${config.schemeLink}pages/mine/myContacts?id=${this.id}`}try {var e = navigator.userAgent.toLowerCase(),n = e.match(/cpu iphone os (.*?) like mac os/);if (((n = null !== n ? n[1].replace(/_/g, ".") : 0), parseInt(n) >= 9)) {window.location.href = t;} else {var r = document.createElement("iframe");(r.src = t), (r.style.display = "none"), document.body.appendChild(r);}} catch (e) {window.location.href = t;}},isWeixin() {if (this.browser.versions.weixin) {this.cover.style.display = "block";return;}},showOrHide() {this.cover.style.display = "none";},downloadAndroid(){this.isWeixin();window.open(config.downloadAndroidLink, "_blank")},downloadIOS(){this.isWeixin();window.open(config.downloadIOSLink, "_blank");},}
}
</script><style lang="scss" scoped>
uni-page-body{height: 100%;
}
.page{margin: 0;padding: 0;height: 100%;width: 100%;background-image: linear-gradient(180deg, #37A60A, #72CF2B);position: relative;overflow: hidden;.container{width: 100%;display: flex;flex-direction: column;align-items: center;position: absolute;bottom: 500rpx;.img-box{width: 260rpx;img{width: 100%;}}.title{font-weight: bold;font-size: 30px;color: #ffffff;margin: 40rpx 0 160rpx 0;}.button{width: calc(100% - 80rpx);height: 90rpx;margin: 20rpx 30rpx;border: none;outline: none;color: #37A60A;background-color: #fff;border-radius: 90rpx;line-height: 90rpx;font-size: 18px;text-align: center;&:hover, &:focus, &:active{box-shadow: 1px 3px 12px rgba(0, 0, 0, 0.3);}}}.cover{width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.5);position: fixed;top: 0;left: 0;z-index: 10;display: none;.cover-content {width: 100%;height: 70px;background-color: #eeeeee;display: flex;align-items: center;justify-content: space-between;padding: 0 15px;box-sizing: border-box;.cover-text{color: #5f5d5d;font-size: 14px;}.cover-img img{width: 40px;height: 40px;}}}
}
</style>

其中:

上述代码中的schemeLink:xxxApp://

Android和ios的下载链接:一个放的apk安装包,一个是跳转到AppStore的

效果如下: 

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687849.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯:C++队列、优先队列、链表

C普通队列 算法竞赛中一般用静态数组来模拟队列&#xff0c;或者使用STL queue。使用C的STL queue时&#xff0c;由于不用自己管理队列&#xff0c;因此代码很简洁。队列的部分操作如下。 C优先队列 很多算法需要用到一种特殊的队列&#xff1a;优先队列。它的特点是最优数据…

Android下SF合成流程重学习之onMessageInvalidate

Android下SF合成流程重学习之onMessageInvalidate 引言 虽然看了很多关于Android Graphics图形栈的文章和博客&#xff0c;但是都没有形成自己的知识点。每次学习了&#xff0c;仅仅是学习了而已&#xff0c;没有形成自己的知识体系&#xff0c;这次趁着有时间&#xff0c;这次…

pyhton在办公方面的应用

好久没发文了&#xff0c;转眼已经2024年了&#xff0c;我的电脑已经八岁了&#xff0c;近来状况频发&#xff0c;为防止它哪天突然嘎嘣&#xff0c;我多年搜集的资料付诸东流&#xff0c;故决定把资料备份一下这些代码有的是原创&#xff0c;有的是借鉴了其他博主的文章&#…

Python算法100例-1.7 最佳存款方案

完整源代码项目地址&#xff0c;关注博主私信’源代码’后可获取 1.问题描述2.问题分析3.算法设计4.完整的程序 1&#xff0e;问题描述 假设银行一年整存零取的月息为0.63%。现在某人手中有一笔钱&#xff0c;他打算在今后5年中的每年年底取出1000元&#xff0c;到第5年时刚…

民安智库如何做新品上市满意度调研

新品上市满意度调研是一种重要的市场研究方法&#xff0c;它通过收集和分析消费者对新产品的态度、购买意愿和满意度等方面的数据&#xff0c;帮助企业了解消费者的需求和期望&#xff0c;发现新产品的问题和不足&#xff0c;从而为产品改进提供有力的数据支持。下面将详细介绍…

什么是生产排产管理系统?哪个最好用?

阅读本文&#xff0c;你将了解&#xff1a;一、生产排产管理系统是什么&#xff1b;二、生产排产管理系统的功能&#xff1b;三、盘点五款好用的生产排产管理系统&#xff1b;四、生产排产管理系统的优势。 一、生产排产管理系统是什么 生产排产&#xff0c;也叫生产计划排程…

智能车竞赛详细介绍

一、引言 随着科技的飞速发展&#xff0c;智能车辆已成为当今研究的热点之一。智能车竞赛作为一项集科技、创新和竞技于一体的活动&#xff0c;为广大学子提供了一个展示才华、交流学习的平台。本文将对智能车竞赛进行详细介绍&#xff0c;包括竞赛背景、目标、赛程安排、技术…

【c++每天一题】跳跃游戏

题目 给你一个非负整数数组 nums &#xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标&#xff0c;如果可以&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1…

人机工程学和人机交互理论:智能座舱设计

hello家人们...本人熟悉PS、Xd、Ai、Sketch、Figma、墨刀、即时设计、mastergo、Pixso等行业设计软件以及前端开发等技能&#xff0c;拥有10年的UI经验&#xff0c;我们可以通过关注评论私信交流以帮助到您解决UI工作中的烦恼&#xff01;谢谢 人机工程学与人机交互理论&#x…

元宇宙专题:元宇宙概念娱乐应用场景案例研究报告 - 体验驱动篇

今天分享的是元宇宙系列深度研究报告&#xff1a;《元宇宙专题&#xff1a;元宇宙概念娱乐应用场景案例研究报告 - 体验驱动篇》。 &#xff08;报告出品方&#xff1a;艾瑞咨询&#xff09; 报告共计&#xff1a;51页 避免刻舟求剑地探索元宇宙概念产品 对于任何一个宏大而…

【Ubuntu内核】解决Ubuntu 20.04更新内核后无法联网的问题

最近在使用Ubuntu 20.04时&#xff0c;在更新内核后无法进行WiFi联网。我的电脑上装载的是AX211型号的无线网卡&#xff0c;之前安装了相应的驱动&#xff0c;并且一直正常使用。但不小心更新到了Linux 5.15.0-94-generic后&#xff0c;突然发现无法连接网络了。 于是首先怀疑…

【前端工程化面试题】什么是 CI/CD

CI/CD 是软件开发中的两个重要实践&#xff0c;分别代表持续集成&#xff08;Continuous Integration&#xff09;和持续交付/持续部署&#xff08;Continuous Delivery/Continuous Deployment&#xff09;。 持续集成 (Continuous Integration, CI)&#xff1a;持续集成是一种…

常见Web安全漏洞的实际案例和攻防技术

常见Web安全漏洞的实际案例和攻防技术 1、SQL注入攻击与防范: 通过一个简单的Web应用演示SQL注入攻击,包括入侵者如何通过输入恶意SQL语句来获取敏感数据。提供相应的防范措施,包括参数化查询、ORM框架的使用等,并附上实际代码演示。Copy code # 恶意SQL注入语句的示例 SEL…

练习接口测试第一步骤

最近一段时间学了Python语言&#xff0c;重新学了 Java&#xff0c;js&#xff0c;html语言&#xff0c;CSS&#xff0c;linux&#xff0c;一堆测试工具&#xff1b;唉&#xff5e; 在接触接口测试过程中补了很多课&#xff0c; 终于有点领悟接口测试的根本&#xff1b; 偶是…

firewall 常用命令

firewall 常用命令 重新装载 sudo firewall-cmd --reload 列出所有 sudo firewall-cmd --list-all 开启 masquerade 伪装IP firewall-cmd --permanent --add-masquerade 关闭 masquerade 伪装IP firewall-cmd --permanent --remove-masquerade

数据结构~二叉树(基础知识)

上一篇博客我们对树有了初步了解与学习&#xff0c;这篇我将初步学习二叉树&#xff01;&#xff01;&#xff08;新年快乐&#xff01;&#xff09; 目录 二叉树 1、定义&#xff1a; 2、特点&#xff1a; 3、基本形态&#xff1a; 4、二叉树的种类&#xff1a; &…

数据库系统概论整理与总结

数据库系统概论 第一章&#xff1a;绪论 四个基本概念 四个概念 数据&#xff1a;Data 数据库&#xff1a;DataBase 数据库管理系统:DBMS 数据库系统:DBS 打个比喻&#xff0c;比如说菜鸟物流&#xff1a; Data&#xff1a;快递 DB&#xff1a;物流厂库 DBMS&#xff1a;对…

C# 如何实现一个事件总线

EventBus&#xff08;事件总线&#xff09;是一种用于在应用程序内部或跨应用程序组件之间进行事件通信的机制。 它允许不同的组件通过发布和订阅事件来进行解耦和通信。在给定的代码片段中&#xff0c;我们可以看到一个使用C#实现的Event Bus。它定义了一些接口和类来实现事件…

上位机图像处理和嵌入式模块部署(cmake的使用)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 过去我们编写windows程序的时候&#xff0c;习惯上都是直接使用visual studio创建工程开发。而开发linux程序的时候&#xff0c;则是编写好c、cpp代…

MySQL 基础知识(九)之视图

目录 1 视图的介绍 2 视图算法 3 创建视图 4 查看视图结构 5 修改视图 6 删除视图 7 参考文档 1 视图的介绍 视图是一张并不存储数据的虚拟表&#xff0c;其本质是根据 SQL 语句动态查询数据库中的数据。数据库中只存放了视图的定义&#xff0c;通过 SQL 语句使用视图时…