/* * @Author: wuyue * @Date: 2022-11-30 17:55:45 * @LastEditTime: 2022-12-12 11:11:11 * @LastEditors: wuyue * @Descripttion: * @version: */ import CallApp from 'callapp-lib'; export default { methods: { openApp(commSchemeUrl) { // 通用协议地址 // let commSchemeUrl // iOS 下载地址 // const iOSDownloadUrl = this.$store.getters.iosUrl; // 安卓下载地址 const androidDownloadUrl = this.$store.getters.androidUrl setTimeout(function () { window.location.href = commSchemeUrl; console.log(commSchemeUrl, "===242424") }, 500); if (!this.$root.isIos) { // 3ms 后没打开,直接跳转对应下载页面 const appDownload = setTimeout(() => { window.location.href = androidDownloadUrl; }, 3000); document.addEventListener('visibilitychange', function () { // 如果页面隐藏,认为打开 app,清除下载任务 if (document.hidden || document.webkitHidden) { console.log('clear1'); clearTimeout(appDownload) } }) window.addEventListener('pagehide', function () { console.log('clear2'); clearTimeout(appDownload) }) } }, // 打开安卓 openAndroid(commSchemeUrl) { const androidDownloadUrl = this.$store.getters.androidUrl const scheme = { protocol: 'uni.wlyxls.commodity.share', host: 'wlyxlslaunch' } const option = { scheme: scheme, intent: { // 安卓原生谷歌浏览器必须传递Intent协议地址,才能唤起APP。 package: 'uni.UNI2A0D0ED', // Android包名 scheme: 'uni.wlyxls.commodity.share', // 和protocol一样:APP协议,URL Scheme的scheme字段,就是你要打开的APP的标识 }, fallback: androidDownloadUrl, timeout: 3000, }; const lib = new CallApp(option); lib.open({ path: '', // 需要打开的页面对应的值,若不需要打开特定页面,path传空字符串''就可以。 param: commSchemeUrl, // 打开APP某个页面时需要接收的参数 // 自定义唤端失败回调函数,传递callback会覆盖callapp-lib库中默认的唤端失败处理逻辑 callback: function () { console.log('唤端失败的处理'); } }); } } }