公司在做弄这一块顺便就贴出来
1.第一步要知道 AppId,小程序原始 ID,第二步要在微信开发平台进行绑定APP
2.直接贴代码
String appId = Contants.WEIXIN_APP_ID; // 填应用 AppId
IWXAPI api = WXAPIFactory.createWXAPI(LoginActivity.this, appId);
WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
//填写小程序原始 ID
req.userName = Contants.WEIXIN_XIAOCHENGXU_ID;
//拉起小程序页面的带参路径 pages/index/index
//可选打开 开发版,体验版和正式版
//index 后面直接传数据过去什么的格式和小程序那边商量
req.path=" pages/index/index?payId="+"eb075553b9354847ad6dd6ac0ecb64b5"+"&token="+BaseApplication.getInstance().getToken()+"&type=0"+"&terminalType=android";
req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;
api.sendReq(req);
第二步小程序拿值,在业务上要登录才能进行下一步操作,比如支付这些
//获取应用实例
var app = getApp()
App({
globalData: {
appid: 'wx1111111111111111111111',//appid需自己提供,此处的appid我随机编写
secret: '5dc333333333333333333',//secret需自己提供,此处的secret我随机编写
},
onLaunch: function (options) {
var that = this
var user = wx.getStorageSync('user') || {};
var userInfo = wx.getStorageSync('userInfo') || {};
wx.login({
success: function (res) {
if (res.code) {
wx.getUserInfo({
success: function (res) {
var objz = {};
objz.avatarUrl = res.userInfo.avatarUrl;
objz.nickName = res.userInfo.nickName;
//console.log(objz);
wx.setStorageSync('userInfo', objz);//存储userInfo
}
});
console.log("***********user_code************************" + res.code);
openId: res.code + "",
token: ,
type: options.query.type,
payId: ,
terminalType: ,
//在小程序中取值以 options.query.键值对比如options.query.token
console.log(options.query.token + "----------------------");
console.log(options.query.payId + "----------------------");
console.log(options.query.terminalType + "----------------------");
var d = that.globalData;//这里存储了appid、secret、token串
//在小程序中进行发起支付操作
wx.requestPayment({
"appId": res.data.data.appId, //公众号名称,由商户传入
"timeStamp": res.data.data.timeStamp, //时间戳,自1970年以来的秒数
"nonceStr": res.data.data.nonceStr, //随机串
"package": res.data.data.package,
"signType": res.data.data.signType, //微信签名方式:
"paySign": res.data.data.paySign,
'success': function (res) {
console.log("*********requestPayment**************")
console.log(res)
wx.navigateBack({
delta: -1
})
},
'fail': function (res) {
console.log("*********requestfail**************")
console.log(res.errMsg)
console.log("*********requestfail**************")
}
})