
公司要在MUI开发的APP里添加上支付功能,然后爬坑开始了。。
因为公司用的是Java语言开发的服务端,所以就要找Java版本的支付代码了

首先在dcloud的问答里搜索看有没有相关文章,找到了下面两篇有用的
第一篇是配置支付宝支付的,第二篇是我在下面发了一个回复求微信支付的代码(所以代码在回复里)

dcloud官方给的php代码地址:https://github.com/dcloudio/H5P.Server
下面说说我在爬坑的时候碰到的障碍

Java语言输出方法有print(),println() 切记一定不能用println() 这个方法输出后会换行,所以一直是失败状态,我开发的时候是支付宝报的错ALI10
微信支付,从APP里请求到服务端接口,在接口里会调用一次微信的接口,此时涉及到一次签名(sign),切记在签名前发送给微信服务器的参数要按照a-z排列好,然后在去签名,完成之后请求微信支付接口,微信给返回一些XML数据,其中只有prepay_id有用,其他需要的参数基本上都是在微信的配置类里配置好了的,此时转换成的json格式数据写出的还有一次签名(sign),这个签名跟上面第一次的签名不一样,要记得在签名参数最后带上key
这里跟大家分享一个可以正常支付的支付宝demo、但是demo需要开发者配置自己的参数才可以运行起来、首先在paydemoactivity中设置相关参数、具体请查看该文件注释、同时需要添加两个支付宝相关的activity到androidmanifest.xml文件、具体可以参照《支付宝钱包支付接口开发包2.0标准版接入与使用规则》里面的5.2.2、里面已经写得很清楚了。有些游戏每次重新开始都会随机地初始化参数,使得需要修改的数值每次都会存放在不同的地址,如果按照一般的方法只有重新查找,不过我却想到一个可能可以偷懒的方法(不一定准行),先按照一般的方法找到这个地址,记录下附近的一些连续的地址上的数值,然后通过一些措施(如反复使用,前后对照等)确定一串地址上的数值是不变的,然后记下这些不变的数值(最好这些数值都比较特殊,不要都是0或1),以后查找时可以利用game expert提供的串查找功能来查找,即查找时输入连续的一串数值(如34h,23h,38h,12h,90h,efh,abh),具体使用方法请见上面的使用介绍,如果运气好的话,可以一次就找到。有些游戏每次重新开始都会随机地初始化参数,使得需要修改的数值每次都会存放在不同的地址,如果按照一般的方法只有重新查找,不过我却想到一个可能可以偷懒的方法(不一定准行),先按照一般的方法找到这个地址,记录下附近的一些连续的地址上的数值,然后通过一些措施(如反复使用,前后对照等)确定一串地址上的数值是不变的,然后记下这些不变的数值(最好这些数值都比较特殊,不要都是0或1),以后查找时可以利用game expert提供的串查找功能来查找,即查找时输入连续的一串数值(如34h,23h,38h,12h,90h,efh,abh),具体使用方法请见上面的使用介绍,如果运气好的话,可以一次就找到。
在webview中如果使用到支付宝,需要添加以下代码,否则操作系统会将支付宝的url拦截,导致你打不开支付宝页面。二维码图片生成后,接下来的流程就是扫码进行支付操作,这里还存在一个问题,需要在扫码后支付成功,需要实现页面的跳转,这一过程需要添加js的定时器,定时查看订单的支付状态是否发生了改变是否为支付成功,成功即可跳转后续流程,失败跳转失败提示。1.支付页面跳转提示uri错误:打开公众平台开发者中心,在接口权限表里面找到 “网页授权获取用户基本信息”点击修改,然后设置成需要跳转的域名。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-99684-1.html
那些炮弹难道真是在电视上让那些鼓吹的军事家的咸蛋与茶叶蛋吗