uniapp开发APP跳转微信小程序和支付宝小程序(安卓版)

您所在的位置:网站首页 uniapp支付宝小程序支付 uniapp开发APP跳转微信小程序和支付宝小程序(安卓版)

uniapp开发APP跳转微信小程序和支付宝小程序(安卓版)

2023-11-21 18:17| 来源: 网络整理| 查看: 265

开发APP时需要支付时跳转微信或者支付宝去支付,但是因为银行合作问题不能直接跳转,所以选择跳转到小程序页面进行支付,微信小程序和支付宝小程序写法不同

APP跳转微信小程序

(需要manifest.json中APP模块配置Share中微信分享保持开启)

微信小程序原始id在微信开放平台查看

let originId = 'gh_xxxxxxxxx' // 微信小程序原始id let path = 'page/index/index?id=123' // 小程序页面路径 uni.getStorageSync('DNS')) let envVersion = 2 // 0-正式版; 1-测试版; 2-体验版 let webUrl = 'https://www.dcloud.io/hbuilderx.html' // 兼容低版本的网页链接 plus.share.getServices(service => { let weixin = service.find(i => i.id === 'weixin') if (weixin) { weixin.launchMiniProgram({ id: originId, path, type: envVersion, // webUrl }, res => { console.log('res', res) }, err => { console.log('err', err) }) } else { // 没有获取到微信分享服务 console.log(weixin) } }, err => { // 获取分享服务列表失败 console.log(err) })

遇到的问题:跳转到小程序页面支付需要用到openID,token和DNS,重新登录比较麻烦,所以传参时直接一起传到小程序使用(传code获取openID时需要先清除一下DNS)

APP跳转支付宝小程序

支付宝小程序appid在支付宝开放平台查看

let alipayUrl = null; if (uni.getSystemInfoSync().platform == "ios") { alipayUrl = 'alipay://platformapi/startapp?appId=123'; } else { alipayUrl = 'alipays://platformapi/startapp?appId=123'; } //alipayUrl 已经有? 问号了,所以这里需要进行编码 let params = encodeURIComponent('?id=123') // page=pages/index/index 跳转到支付宝小程序页面的页面路径 alipayUrl = `${alipayUrl}&page=page/index/index${params}` //唤起支付宝 plus.runtime.openURL(alipayUrl);

注意:跳转支付宝小程序默认正式版本

支付完成返回APP

返回APP

如果是和我一样APP小程序公用一套代码的话,记得传参标记一下哪个是APP传过来的,不然会混乱



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3