前言

目前移动端支付比较常用的就是支付宝,微信,银联了,其实集成支付对于前端来说还是比较简单的,于是简单的做下笔记.

别人的总结,收藏一下:

步骤

微信

步骤1:

初始化微信支付api对象

//第二个参数为app_id

IWXAPI api = WXAPIFactory.createWXAPI(this, "wxb4ba3c02aa476ea1");

步骤2:

下订单,提交商品参数到服务器,这时请求成功后台会返回一个唯一的订单号.

步骤3:

通过订单号请求服务器,这时请求成功后台会返回一个支付串码

步骤4:

调用微信支付SDK,传入“支付串码”

/**调用微信支付*/

public void sendPayRequest() {

PayReq req = new PayReq();

//支付串码

req.appId = Constants.APP_ID;

req.partnerId = wechatPayInfo.getPartnerId();//合作者id

req.prepayId = wechatPayInfo.getPrepayId()+"";//微信支付核心参数:预支付订单号

req.nonceStr = wechatPayInfo.getNonceStr();

req.timeStamp = wechatPayInfo.getTimestamp();

req.packageValue = wechatPayInfo.getPackageValue();

req.sign = wechatPayInfo.getSign();

// 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信

//3.调用微信支付sdk支付方法

api.sendReq(req);

}

步骤5:

处理支付结果回调

微信支付异常:

问题: 微信支付第一次支付成功,第二次开始都是失败,返回-1 ,需要清除微信数据,重新登录后,还是只能支付一次成功,后面支付都是返回-1.

百度了一轮,最终答案都是微信开发者平台的appId,包名或者签名错了.

请参考:

https://blog.csdn.net/nnmmbb/article/details/50533138

最终还是没解决,原来是后台返回的appId错了,他返回的是公众号的appId,所以只能调起一次,其实后台返回的appid和我们微信开发者平台的appid是一样的.

解决思路:

iOS不需要验证签名合法性,就是说他们appid不需要绑定boundID,Android需要绑定包名签名。也就是说如果后台返回的appid不对iOS也可以唤起。

官网下载的demo,Android也只能唤起一次,而iOS可以一直唤起。

如果你检查你的签名包名配置什么的都是对的,那百分之99是后台返回的appid有问题。不要因为iOS可以唤起就认为后台没问题。

因为客户端不够安全,所以appsercret等要放在后台,客户端做的事情非常少,只需要1. 用appid注册wxapi 2. 从后台获取支付信息 3. 调用sdk发起支付 4. 接收支付结果 5. 请求自己的业务服务器是否支付成功

最后感谢各位大佬,

android支付平台,android移动支付相关推荐

  1. android自动微信支付平台,Android实现微信支付功能

    开发Android APP微信支付功能,需要完成三个步骤:第一步生成预支付订单.第二步生成微信支付参数.第三步调起微信APP支付.除了需要审核通过的APP应用外,还需要获得微信支付接口权限,然后获取对 ...

  2. android自动微信支付平台,Android微信APP支付开发要点

    基本概念 包名值得是你APP的包,在创建工程时候设置的,需要在微信支付平台上面设置. 签名指的是你生成APK时候所用的签名文件的md5,去掉:全部小写,需要在微信支付平台上面设置. 调试阶段,签名文件 ...

  3. 第三方支付平台:易宝支付

    国付宝国企 LianLianPay连连支付 这个比较好用,可以自己试试 我这里说的是易宝支付 两种在线支付的方式 在线支付一共有两种方式: 电商直接与银行对接: 电商通过第三方支付平台与银行对接: 电 ...

  4. u云支付 php05,优云易支付-免签约支付平台-彩虹易支付,1分钟快速接入支付功能...

    支付接口介绍 使用此接口可以实现支付宝.QQ钱包.微信支付与财付通的即时到账,免签约,无需企业认证.接口API地址是:http://youyunzf.cn/ 本文阅读对象:商户系统(在线购物平台.人工 ...

  5. abc云支付php,糖果易支付 - 免签约支付平台,彩虹易支付,abc云支付,糖果支付

    支付接口介绍 使用此接口可以实现支付宝.QQ钱包.微信支付与财付通的即时到账,免签约,无需企业认证.接口API地址是:https://pay.tgyzf.com/ 本文阅读对象:商户系统(在线购物平台 ...

  6. abc云支付php,凉秋易支付,免签约支付平台,彩虹易支付,abc云支付云钱包,云支付,云结算,支付接口,支付营销,易支付,微信支付,支付宝,QQ钱包,个人支付接口,免签支付接口...

    支付接口介绍 使用此接口可以实现支付宝.QQ钱包.微信支付与财付通的即时到账,免签约,无需企业认证.接口API地址是:http://pay.lqan.cn/ 本文阅读对象:商户系统(在线购物平台.人工 ...

  7. 点评Hack易支付 - 免签约支付平台 -彩虹易支付,1分钟快速接入支付功能

    Hack易支付是一个和彩虹易支付一样的免签约支付产品,可以助你一站式解决网站签约各种支付接口的难题,现拥有支付宝.财付通.QQ钱包.微信支付等免签约支付功能,并有开发文档与SDK,可快速集成到你的网站 ...

  8. 第四方支付平台是聚合支付平台吗

    聚合支付也被称为"第四方支付",不同于第三方支付介于银行和商户之间的模式,聚合支付介于第三方支付和商户之间,通过APP.网站等渠道聚合多家合作银行.第三方支付平台及其他服务商的AP ...

  9. 西米支付:游戏支付平台,游戏支付接口申请相关知识及流程,需要申请的坛友可参考

    游戏支付平台是专门为游戏玩家提供在线购买道具.皮肤.装备等虚拟物品的充值通道,游戏开发公司只有接入了支付接口,玩家才能通过这些支付通道,购买自己想要的道具物品,进而获得更加优质的游戏体验. 什么是游戏 ...

最新文章

  1. one-hot encoding不是万能的,这些分类变量编码方法你值得拥有
  2. python pprint用法_Python中使用pprint函数进行格式化输出的教程
  3. opensuse11.4-fcitx输入法安装
  4. python查看类的属性和方法_Python 获取对象的属性和方法—dir 函数
  5. 通过python实现卷积神经网络_Python 徒手实现 卷积神经网络 CNN
  6. PostgreSQL的高可用与数据复制方案
  7. php里运行js,在PHP 中运行JS - mickelfeng的个人空间 - OSCHINA - 中文开源技术交流社区...
  8. 到天宫做客(洛谷P1178题题解,Java语言描述)
  9. 使用gdb和core dump迅速定位段错误
  10. 这有8个小秘诀,让你更懂CSS!
  11. Android remote debug 打开手机应用里的网页却显示空白
  12. block才会执行 mono_Monogb基本概念及基本操作
  13. c语言怎么编程机器人,移动机器人(电子球)编程(c语言)
  14. Docker系列技术分享、容器技术和Docker
  15. 同是办公软件,wps和office有什么区别?
  16. python pywin32 的学习笔记
  17. 当AD(Altium Designer)画PCB时Ctrl+H快捷键无法选中连线时的解决办法
  18. swift 设置贯穿导航条的页面背景图片
  19. 手机浏览网页或打开App时莫名弹出支付宝领红包界面的原因及应对措施
  20. 常用英语口语绝佳句型100句

热门文章

  1. GROOVY简单语法实习
  2. .NET串口通讯解决方案
  3. JS各种各样的拖动效果
  4. element el-table加入固定列时 滚动条无法移动 失效的情况
  5. MongoDB基本用法
  6. vue3 创建路由「vue-router 4.x 的使用」
  7. Linux基础(4)--用户与权限
  8. matlab sdk7.1,免费试用MATLAB Compiler SDK
  9. 7-45 银行业务队列简单模拟 (10 分)
  10. oracle中的序列 cache,oracle row cache lock 之sequence