uniapp实现app跳转app |
您所在的位置:网站首页 › uniapp调用第三方app › uniapp实现app跳转app |
需要H5唤醒App看这篇文章:H5唤醒App 需求:公司的app跳转公司的另一个app 注意看注释!!! 注意看注释!!! 注意看注释!!! 如何实现呢,首先你要理解一下的东西Android平台设置UrlSchemes,实现被第三方应用调用 iOS平台设置UrlSchemes,实现被第三方应用调用 iOS平台设置应用访问白名单(LSApplicationQueriesSchemes) 判断第三方程序是否已存在 调用第三方程序 调用第三方程序打开指定的URL plus.os.name,返回你手机是安卓还是苹果 问题:判断第三方程序是否存在的isApplicationExist,ios系统判断本公司的app是一直不存在的,不知道什么原因,安卓是可以的 逻辑:1.首先判断是手机是安卓还是ios 2.在判断是你手机有没有这款app 3.有就打开,没有就下载 配置:下面我会说,A款app,B款app,便于分开,实现A款app跳转B款app 首先配置B款app的Schemes,分为ios很Android配置 路径:manifest.json—源码视图—app-plus—distribute(下面有ios,Android) (1) Android (2)ios2. 配置A款app 路径:manifest.json—源码视图—app-plus—distribute(下面有ios,Android) 我们只要配置A款app的ios白名单就行,白名单是要跳转过去的app的urlschemes 实现A款app跳转B款app if (plus.os.name == "Android") { //安卓 if (plus.runtime.isApplicationExist({ //查看安卓系统手机有没有下载这款app pname: 'com.iss.xxxx', //B款app云打包的包名 })) { //安装了app plus.runtime.launchApplication({ //打开app pname: "com.iss.xxxx", //B款app云打包的包名 extra: { url: "wswl://com.iss.xxxx" //B款app配置的schemes+云打包的包名 }, function(e) { console.log("Open system default browser failed: " + e.message); } }) } else { //未安装app plus.runtime.openURL('https://a.app.qq.com/o/simple.jsp?pkgname=xxxx', function(res) { //进入后台小哥哥给我的应用宝下载链接,让你们后台给你 //这链接会判断你手机是ios还是Android,Android进入应用宝下载app //跟下面的是一个链接 console.log(res); }); } } else if (plus.os.name == "iOS") { //苹果 //因为ios查不到B款app在ios系统手机里面,其实下载了,也是检测不到,所以就不检测了 //直接打开B款app,B款app没有的话,会进入回调报错,我们在回调去打开下载链接 plus.runtime.launchApplication({ action: "wswl://" }, function(e) { plus.runtime.openURL('https://a.app.qq.com/o/simple.jsp?pkgname=xxxx', function(res) { //进入后台小哥哥给我的appStore下载app链接,,让你们后台给你 //这链接会判断你手机是ios还是Android,ios进入应用宝下载app //跟上面的是一个链接 console.log(res); }); }); } 总结1.B款app需要:Android配置schemes,ios配置urlschemes和urlidentifier(包名) 2.A款app需要:ios配置跳转B款app白名单urlschemewhitelist |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |