Cordova - 彻底搞定安卓中的微信支付插件!

你看到这个标题肯定会惊讶,一个Cordova的微信支付插件,有这么夸张吗?信不信由你,我相信,最终你会回来看这篇文章的!

一,不要使用的微信支付插件:https://github.com/xu-li/cordova-plugin-wechat

上面的插件,是目前大家在网上搜索文章时候,推荐最多的插件,但是,插件开发者,已经不再维护这个插件了,从最新版插件的代码看,确实是那样,其中从2.1.0开始的bug,到了最终的2.3.0也没有修复,而且还增加了bug!如果你不相信我的话,真的想使用上面这个插件,如果你没有能力去修改bug,我强烈建议你使用2.1.0版本,安装命令如下:

[email protected]2.1.0 --variable wechatappid=你的微信appid

下面是这个插件的bug列表,以及修复方法:

1,微信支付类安装路径错误。这个插件在安装时候,把微信支付类安装到了错误路径下。当你安装这个插件之后,你会发现在"你的工程目录platforms\android"下有一个"src"文件夹,这个文件夹正常是不应该存在的,如果有是因为这个插件安装JS的bug导致的!

修复方法1:修改安装插件安装JS文件。

打开文件“你的工程目录\plugins\cordova-plugin-adam-wechat\scripts\android-install.js”,在44行左右,找到“targetFiles = ["EntryActivity.java", "WXEntryActivity.java", "WXPayEntryActivity.java"];”这行代码,把它上面的代码修改为:

    var targetDir = path.join(projectRoot, "platforms", "android", "app","src","main","java", packageName.replace(/./g, path.sep), "wxapi");    

修复方法2:不用修改此文件,直接拷贝用到的微信支付类到正确的包下。这根据你的工程名称决定了,假设现在工程的包结构为:“com.sunylat.test”,那么就应该把安装到上面错误目录中的"wxapi"目录,直接拷贝到“你的工程目录\platforms\android\app\src\main\java\com\sunylat”。

2,JAVA类方法使用错误。Wechat.java中,有两处低级的JAVA编程错误,当编译的时候,会发现2.3.0,这个类中,有两个编译错误。

错误1:方法使用不当,使用的方法没有输入参数,而错误处加入了输入参数。这个错误,因为不了解程序的详细细节,暂时无法给出修复建议。

错误2:在静态类中,使用非静态类的字段。这个错误,把"static"修饰符去掉就可以了。

对于一款这样的插件,无论从那个角度,我都不建议你继续使用了!!!

二,推荐使用的微信支付插件:

https://github.com/adam198824/cordova-plugin-wechat

这个插件,已经修复上面插件的所有错误!!我正在使用这个插件,而且测试完毕,在安卓和IOS下都工作正常,所以我推荐这个微信支付插件!此插件作者不仅维护这个插件,还维护着支付宝插件,感谢adam198824!!!

三,如何能够使用“adam-wechat”插件?

“adam-wechat”插件就是上面我途径的差距,是“wechat”插件的一个分支,修复了最后一个版本以及先前版本“wechat”插件的的已知bug,上面我提到的3个bug!!仅仅知道这个插件确实可以使用,可能还不行,因为我们开发程序,不可能直接就写代码,随后测试都不做,就发布了,那么怎么能够完成这个程序的测试过程?你真的耐心看下去!

(一)测试APP的准备工作:

 1,微信支付接口准备。

A,必须通过腾讯公司审核,拿到微信appid。

B,生成微信支付接口提交数据的工作已经完成,给微信支付接口提交数据前,必须生成对应的支付数据,随后向微信支付接口提交这些数据,才能支付。

C,下载腾讯公司提供的签名生成工具,下载后,安装到测试手机中,等要测试手机APP时候,生成添加到腾讯微信支付接口验证签名的对应处。

2,安装“adam-wechat”插件。执行安装命令:

cordova plugin add cordova-plugin-adam-wechat --variable wechatappid=你的微信APPID

(二)编写cordova程序中的代码

原文地址:https://www.cnblogs.com/sunylat/p/9967044.html

时间: 2024-07-31 09:16:35

Cordova - 彻底搞定安卓中的微信支付插件!的相关文章

面试大总结之一:Java搞定面试中的链表题目

链表是面试中常考的,本文参考了其它一些文章,加上小编的自己总结,基本每个算法都测试并优化过. 算法大全(1)单链表 中还有一些链表题目,将来也会整理进来. * REFS: * http://blog.csdn.net/fightforyourdream/article/details/16353519 * http://blog.csdn.net/luckyxiaoqiang/article/details/7393134 轻松搞定面试中的链表题目 * http://www.cnblogs.co

一句话搞定IOS中View的Frame和Bound

就一句话,Frame是父View上看到子View的窗户,Bound是子View上可以被父View看见的内容. 稍微解释下.Frame 指子View在父View中的位置以及大小.由两部分构成,第一部分是Origin,规定了子View在父类的位置.第二部分是Size,指View在父类中的可视范围(这里能说是View的大小).这感觉像是在父View中在Frame.Origin位置打开一个窗户,窗户的大小是Frame.Size,从窗户中可以看到子View的内容. Bound 指子View自身显示那些内容

WooCommerce微信支付插件免费版下载

WooCommerce微信支付插件免费版下载 2016-05-11 点击:605 免费版来了 免费版终于来了,直接下载用吧,当然免费少一些功能,只有PC扫码支付,没有微信原生支付,没有汇率,没有退款,没有红包促销,没有微信登录,没有技术支持. 免费版下载地址: Github WordPress官方下载 Zip文件直接下载 帮助文档: 帮助文档,只看前面部分就行了 聊聊企业版(红包版本)的定价 一些用户反映我们正版插件价格太贵,我们的定价包含两方面:插件+售后服务.只要购买正版插件的用户都享受全程

WooCommerce 微信支付插件

WooCommerce 是 WordPress 平台上使用最广泛的电子商务插件,也是世界范围内使用量最大的独立电商平台, 我原来对微信支付是有些看不惯的,甚至觉得微信支付应该给申请条件再加上一条:只有姓马的可以申请使用,后来,微信支付变的很快,并且体验也有了不小的提升,加上微信本身的巨量用户资源,所以看起来,微信支付是蛮有前途的,于是,我做了个 WooCommerce 微信支付插件,叫 WeixinPay for WooCommerce (WeixinPay 不中不洋的,不过也算是体现了其强大吧

三步轻松搞定delphi中CXGRID手动添加复表头(多行表头,报表头)

网上有代码动态生成cxgrid多行表头的源码,地址为:http://mycreature.blog.163.com/blog/static/556317200772524226400/ 如果要手动设计多行表头的话,有下面三步搞定: 1.新建一个工程.将CXGRID控件放在上面,Customize创建一个banded table 或者DB BANDED table.操作方法一样. 2.增加BANDS 和columns.加两个BANDS和5个columns.这里看下图红框内的内容为默认这个colum

iOS中 最新微信支付/最全的微信支付教程具体解释 韩俊强的博客

亲们, 首先让我们来看一下微信支付的流程吧. 1. 注冊微信开放平台,创建应用获取appid,appSecret,申请支付功能,申请成功之后会返回一些參数. 2. 下载微信支付sdk 3. client请求订单,后台与微信后台交互.返回给client支付參数 4. 调用微信client.由微信client和微信server打交道: 5. client和服务端都会收到支付结果:(前台消息不可靠.我们须要去后台验证,假设后台没有收到支付通知.后台去微信server验证然后将结果返回给client)

微信商城中使用微信支付接口获取用户地址

授人以鱼不如授人以渔 微信支付获取用户地址 使用微信获取地址信息是和微信支付一道申请的,微信支付申请通过,就可以使用该功能. 微信商城中,使用微信支付获取用户的收货地址,可以省略用户输入地址信息的繁复流程,提高用户体验. 但是可能是因为牵扯到用户隐私,所以在使用过程中,需要用户自己主动选择使用该功能,并且是通过点击的操作,我们才可以获取到用户的收货地址,这一点是要注意的. 操作流程如下: 1.用户打开购物车页面,点击结算,跳转到一个微信的oauth2的页面,地址为:https://open.we

在douphp中加入微信支付教程

本教程结合推送模板消息效果更佳!如果您在用douphp的订单会员模块并且在微信端使用,那么在处理订单的时候可以使用微信付款!前提条件:开通微信支付微信公众号会员关注了你的微信公众号 直接使用微信提供的sdk就可以,具体的操作办法如下! 1.下载微信提供的公众号内支付的sdk文件!下载地址:https://pay.weixin.qq.com/wiki/doc/api/download/WxpayAPI_php_v3.zip2.解压后我们放在m/目录下即可(按照sdk/doc文件夹内的word文档修

iOS中 最新微信支付/最全的微信支付教程详解 韩俊强的博客

每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 亲们, 首先让我们来看一下微信支付的流程吧. 1. 注册微信开放平台,创建应用获取appid,appSecret,申请支付功能,申请成功之后会返回一些参数. 2. 下载微信支付sdk 3. 客户端请求订单,后台与微信后台交互,返回给客户端支付参数 4. 调用微信客户端,由微信客户端和微信服务器打交道: 5. 客户端和服务端都会收到支付结果:(前台消息不可靠,我们需要去后台验证,如果后台没有收到支付通知,后台去微