cordova 打包APP 支付宝支付功能
cordova plugin add cordova-plugin-alipay-v2 --variable APP_ID=your AppId //添加依赖
·
cordova 打包APP 支付宝支付功能
最近公司开发APP项目 开始是计划使用Vue+Hbuilder打包APP,后期因为其他原因最后选了cordova打包APP,造成了之前h5支付无法使用。最后使用使用支付宝插件cordova-plugin-alipay-v2,在开发过程中刚开始使用支付宝沙箱模式,但是报错40002错误,很头疼,最后百度 发现少了一个配置,下面将是解决方案,希望可以帮助到小伙伴们, 我也是前端新手小白鼠,不喜欢勿喷
1.首先拥有cordova环境,具体方法如下
2.添加支付插件
cordova plugin add cordova-plugin-alipay-v2 --variable APP_ID= your AppId //添加依赖(your AppId在支付宝开放平台APPid)
在你的package.json文件中会有这样的代码
添加支付宝插件, 其中APP_ID就是你所申请应用的id值(图片中的是沙箱id)
3.项目中使用支付插件
// An highlighted block
MoneyTop({ //此函数是向后台发送请求。里面是此订单的参数
channel:this.type, //支付方式 weChat 或者 aliPay因为这里是支付宝,所有是alipay
price:this.price,
type:1
})
.then(res=>{
let payInfo=res //后台返回的结果,是一个订单信息
//类似于app_id=2015052600090779&biz_content=%7B%22timeout_express%22%3A%2230m%22%2C%22product_code%22%3A%22QUICK_MSECURITY_PAY%22%2C%22total_amount%22%3A%220.01%22%2C%22subject%22%3A%221%22%2C%22body%22%3A%22%E6%88%91%E6%98%AF%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE%22%2C%22out_trade_no%22%3A%22IQJZSRC1YMQB5HU%22%7D&charset=utf-8&format=json&method=alipay.trade.app.pay¬ify_url=http%3A%2F%2Fdomain.merchant.com%2Fpayment_notify&sign_type=RSA2×tamp=2016-08-25%2020%3A26%3A31&version=1.0&sign=cYmuUnKi5QdBsoZEAbMXVMmRWjsuUj%2By48A2DvWAVVBuYkiBj13CFDHu2vZQvmOfkjE0YqCUQE04kqm9Xg3tIX8tPeIGIFtsIyp%2FM45w1ZsDOiduBbduGfRo1XRsvAyVAv2hCrBLLrDI5Vi7uZZ77Lo5J0PpUUWwyQGt0M4cj8g%3D
cordova.plugins.alipay.payment(payInfo,function success(e){ //调用支付插件,
alert("支付成功")
},function error(e){
alert("支付失败")
});
})
.catch(err=>{
})
此时打包apk使用时会发现无法调用起沙箱版支付宝 会报错40002
4.找到该文件platforms/android/src/cn/hhjjj/alipay/alipay.java ,在payment中的PayTask前面加一行代码:
com.alipay.sdk.app.EnvUtils.setEnv(com.alipay.sdk.app.EnvUtils.EnvEnum.SANDBOX);
这个时候就可以使用沙箱版支付宝去测试接口是否可以使用,但是这个只限于测试版本,上线之后需要将此代码注释
第一次做APP。第一次使用该插件,第一次写博客,大佬勿喷,
更多推荐



所有评论(0)