写在前言:用过微信支付的都知道,小程序在支付时候也被苹果无情的抛弃了。所以就要区分是安卓机型还是苹果机型。那么怎么区分呢,在小程序中有API的。
wx.getSystemInfo组件功能就是获取用户手机系统信息
这一点我们直接配置在小程序的APP.JS中方便整个小程序的页面调用
//app.jsonLaunch: function(ops) { //调用API从本地缓存中获取数据 const self = this; console.log("----打开小程序了----",ops) if (ops.scene == 1044) { console.log(ops.shareTicket) } wx.getSystemInfo({ success: function (res) { console.log(">>>>", res) var model = res.system; wx.setStorageSync('appModel', model); } }); var logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) },
将获取的信息缓存发给别的页面来调用,system就是手机的操作系统信息,所以存储这一点内容。
在别的页面来做判断;//支付页面onLoad: function (options) { var that = this; console.log(this.data.content) that.setData({ pageType: this.data.content, }) var appInfo = wx.getStorageSync("appModel"); console.log("判断用户系统", appInfo) if (appInfo.indexOf("Android")) { that.setData({ systemInfo: false, }) } else { that.setData({ systemInfo: true, }) } },
也有人说直接用赋值判断,我说那样也不是很简单,最起码没这么简单明了。
页面中的支付方式判断用存储器里面的值systemInfo。使用条件判断语句wx:if请选择方式 可以选择找朋友代付或者保存支付码去扫码支付 该课程价格 ¥{ {helpdata}} { {item.title}} 原价:{ {item.prime}} ¥{ {item.price}} 暂不支持 十分抱歉,由于IOS相关规范,您暂时无法在这里购买。 该课程价格 ¥{ {helpdata}} { {item.title}} 原价:{ {item.prime}} ¥{ {item.price}}
效果图:
放在末尾:推荐我的个人两个小程序: