ping++调微信支付页面调不起来,怎么入手-
来源:互联网 发布:为什么一淘比淘宝便宜 编辑:程序博客网 时间:2024/05/09 22:58
项目中遇到一个这样的问题,用的是ping++支付,集成了支付宝和微信,支付宝支付是没有问题的,微信界面就是死活调不起,直接就是显示支付失败。
我是这样排查的:
1.微信支付调不起来,微信分享呢?微信分享测试,是没有问题的,说明在微信开发者平台上注册的应用AppID以及签名是没有问题,因为这两项是要配置在shareSdk中的。
2.看到微信开发者平台上的签名以及id,去ping++的开发者平台上验证,配置的微信支付的签名是否有问题,还是没有问题------奇了怪了。
3.配置没有问题,那看具体的代码呢,参照ping++的开发文档,从清单文件到调支付界面的代码,对照着看,有没有配置错?
/** * 调用第三方支付 * * @param chargesUrl */ private void pay(String chargesUrl) { Intent intent = new Intent(); String packageName = getPackageName(); ComponentName componentName_WX = new ComponentName(packageName, packageName + ".wxapi.WXPayEntryActivity"); intent.setComponent(componentName_WX); intent.putExtra(PaymentActivity.EXTRA_CHARGE, chargesUrl); startActivityForResult(intent, REQUEST_CODE_PAYMENT); }
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { //支付页面返回处理 if (requestCode == REQUEST_CODE_PAYMENT) { if (resultCode == Activity.RESULT_OK) { String result = data.getExtras().getString("pay_result"); Intent intent = new Intent(PayServiceOrderOptionActivity.this, PayResultActivity.class); intent.putExtra("result", result); startActivity(intent); finish(); } } }
也是没有问题的。
4.还是得熟悉ping++的支付流程,前端点击支付按钮的时候,选择的有微信还是支付宝,然后往自己服务器发送请求,传递的参数有pay_style(选择的支付方式,支付宝是0 ,微信是2)和trade_no(订单号),然后服务器返回支付信息,然后拿着支付信息再跳转支付。
具体代码如下:
/** * 结算中心获取订单信息跳转支付 */ @OnClick(R.id.order_submit) void submitPay() { ApiService.getInstance().getPayInfo(selectedPayOption.value, tradeNo).enqueue(new ApiServiceCallback<JsonObject>() { @Override public void onSuccessful(JsonObject result) { if (result != null) { pay(result.toString()); } hideProgress(); } }); }
pay()就是调取的三方支付,一步步调试的时发现,选择支付宝还是微信支付后台返回的result中的信息中有一个字段是channel,调选付宝返回的是“alipay”,选微信返回的竟然是是“alipay_wap”,这是银联的,应该返回“wechat”才对。
5.现在问题明确了,肯定和这相关的,(1)后台返回有误 (2)前端提交的时候传的支付渠道有问题。 最后发现就是前端选择支付方式的时候,支付渠道错了。 改正好,后台返回的数据没问题,微信支付也就能调起了。
选择支付页面是这样的:
3 0
- ping++调微信支付页面调不起来,怎么入手-
- 支付宝H5支付调不起来,提示ERR_UNKNOWN_URL_SCHEME
- 钱,怎么都存不起来
- 模拟器启动不起来怎么解决
- WebView网页中使用到支付宝调不起来,提示ERR_UNKNOWN_URL_SCHEME
- 【完美解决】WebView网页中使用到支付宝调不起来,提示ERR_UNKNOWN_URL_SCHEME
- 微信支付集成第一次调用支付界面成功,以后调不起来支付界面返回-1,等微信支付问题。
- 使用Ping++完成H5页面支付功能
- 使用Ping++完成H5页面支付功能
- 十大原因详解你怎么就富不起来?
- Android虚拟机怎么启动不起来,一直停在启动界面
- ping++支付
- ping++支付
- iOS 微信支付 调不起来微信客户端
- mysql 启动不起来
- VMware 启动不起来。
- Apahce启动不起来
- oracle 启动不起来
- Java实现验证码验证功能
- 关于 android.support.v7.widget.ListPopupWindow 在5.0 以上设备显示时上下出现黑边的解决办法。
- AngularJS实际项目应用--ui-router
- C++抽象编程——面向对象(6)——设计新的类(1)
- 关于linux文件挂载(一)
- ping++调微信支付页面调不起来,怎么入手-
- Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分
- U盘分区合并
- Android之ConstraintLayout(依赖约束)布局
- vue2.x响应式原理,vue与react响应式简单对比
- Oracle数据库学习
- 汇编伪指令的学习
- Centos7 安装 PHP7最新版
- VotingClassifier 模型聚合——投票