開發(fā)APP時(shí)需要支付時(shí)跳轉(zhuǎn)微信或者支付寶去支付,但是因?yàn)殂y行合作問題不能直接跳轉(zhuǎn),所以選擇跳轉(zhuǎn)到小程序頁(yè)面進(jìn)行支付,微信小程序和支付寶小程序?qū)懛ú煌?/p>
APP跳轉(zhuǎn)微信小程序
(需要manifest.json中APP模塊配置Share中微信分享保持開啟)
微信小程序原始id在微信開放平臺(tái)查看
let originId = 'gh_xxxxxxxxx' // 微信小程序原始id
let path = 'page/index/index?id=123' // 小程序頁(yè)面路徑
uni.getStorageSync('DNS'))
let envVersion = 2 // 0-正式版; 1-測(cè)試版; 2-體驗(yàn)版
let webUrl = 'https://www.dcloud.io/hbuilderx.html' // 兼容低版本的網(wǎng)頁(yè)鏈接
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 {
// 沒有獲取到微信分享服務(wù)
console.log(weixin)
}
}, err => {
// 獲取分享服務(wù)列表失敗
console.log(err)
})
遇到的問題:跳轉(zhuǎn)到小程序頁(yè)面支付需要用到openID,token和DNS,重新登錄比較麻煩,所以傳參時(shí)直接一起傳到小程序使用(傳code獲取openID時(shí)需要先清除一下DNS)
APP跳轉(zhuǎn)支付寶小程序
支付寶小程序appid在支付寶開放平臺(tái)查看
let alipayUrl = null;
if (uni.getSystemInfoSync().platform == "ios") {
alipayUrl = 'alipay://platformapi/startapp?appId=123';
} else {
alipayUrl = 'alipays://platformapi/startapp?appId=123';
}
//alipayUrl 已經(jīng)有? 問號(hào)了,所以這里需要進(jìn)行編碼
let params = encodeURIComponent('?id=123')
// page=pages/index/index 跳轉(zhuǎn)到支付寶小程序頁(yè)面的頁(yè)面路徑
alipayUrl = `${alipayUrl}&page=page/index/index${params}`
//喚起支付寶
plus.runtime.openURL(alipayUrl);
注意:跳轉(zhuǎn)支付寶小程序默認(rèn)正式版本
支付完成返回APP文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-738048.html
<button class="bottom" open-type="launchApp" app-parameter="wechat" binderror="launchAppError">返回APP</button>
如果是和我一樣APP小程序公用一套代碼的話,記得傳參標(biāo)記一下哪個(gè)是APP傳過來(lái)的,不然會(huì)混亂文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-738048.html
到了這里,關(guān)于uniapp開發(fā)APP跳轉(zhuǎn)微信小程序和支付寶小程序(安卓版)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!