美文网首页
iOS中微信支付中调用不起来微信

iOS中微信支付中调用不起来微信

作者: LibraGril | 来源:发表于2019-01-21 13:59 被阅读0次

这几天在进行版本开发中遇到了一个问题:
支付使用第三方微信支付的时候,app调不起来微信,什么都不显示也不返回,很是纳闷。


前提条件:

第一版本使用微信支付的时候,是直接下载友盟的SDK,版本是UMSocial_Sdk_5.2: 旧版本 现在进行开发的时候,组件化之后的,直接使用的是cocoapods引用的UMSocial: podfile微信使用的完整版

代码流程不变

                PayReq *weChatReq = [[PayReq alloc] init];
                weChatReq.openID = weChatDic[@"appid"];
                weChatReq.partnerId = weChatDic[@"partnerid"];
                weChatReq.prepayId = weChatDic[@"prepayid"];
                weChatReq.nonceStr = weChatDic[@"noncestr"];
                weChatReq.timeStamp = [weChatDic[@"timestamp"] integerValue];
                weChatReq.package = weChatDic[@"package"];
                weChatReq.sign = weChatDic[@"sign"];
                [WXApi sendReq:weChatReq];

但是,使用cocoapods引入的,在执行代码的时候

 [WXApi sendReq:weChatReq];

微信调不起来

查找问题原因:
1.首先注册的AppKey没有问题;
2.相应的设置没有问题;


考虑使用的库的问题:
经过查找,发现在WXApiObject.h文件中,一个有PayReq 和PayResp这两个文件,一个没有


WXApiObject.h中的PayReq 和PayResp 但是,为什么之前的没有问题,查找代码,同事自己定义了PayReq 和PayResp这两个缺失的文件,所以,之前代码中也有这两个文件: 代码中自定义PayReq 和PayResp

解决的方案:

先将友盟中的微信部分,设置成精简版,不使用完整版: 使用微信精简版

再新增微信支付的SDK:

  pod 'WechatOpenSDK'

删除重复定义的文件。运行,在相应的地方就可以调用起来微信支付。

相关文章

网友评论

      本文标题:iOS中微信支付中调用不起来微信

      本文链接:https://www.haomeiwen.com/subject/gvwxdqtx.html