ShareSDK微信支付成功不调用onResp、openURL、handleOpenURL等方法
来源:互联网 发布:cp1e编程软件cx one 编辑:程序博客网 时间:2024/05/16 23:44
ShareSDK最新的是3.x版本,以前老的2.x需要更新,毕竟ios9已经更新啦。然后ShareSDK里的最新方法也是肯定更换,这是比较痛苦的事情,项目里又要重新来一遍,检查、测试等。
按照官网的文档以及demo进行集成,设置白名单、添加文件等。配置微信、支付宝等。
开始运行项目,编译通过,测试支付,微信支付也成功了,但是发现不回调onResp方法,openURL方法也没有进入,难道项目引入头文件缺少?(onResp、openURL、handleOpenUR方法写在Appdelegate里边)。
开始查找问题:
1. ShareSDK 2.x的sdk是可以回调onResp。
2. 也按照官网的配置要求进行设置。
3. 官网的demo是可以回调onResp,说明sdk应该是最新的、没有问题。
4. 检查微信配置文件,appleid、密钥等。
最后得出问题肯定是初始化sdk的时候出现的。
那就检查对比官网demo是不是少写了配置,直接检查微信的配置,果然发现问题了,微信的代理没有写,因为这个代码是在官网上复制的,和官网给的demo是不一样的。
demo代码截图
官网网站代码
两边对比可以发现:缺少 delegate:self
[ShareSDKConnector connectWeChat:[WXApi class]];
[ShareSDKConnector connectWeChat:[WXApi class] delegate:self];
还需要注意一下Appdelegate需要添加三个方法以及onResp:
- - (BOOL)application:(UIApplication *)application
- handleOpenURL:(NSURL *)url
- {
- return [WXApi handleOpenURL:url delegate:self];
- }
- -(BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary<NSString *,id> *)options
- {
- return [WXApi handleOpenURL:url delegate:self];
- }
- - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
- {
- return [WXApi handleOpenURL:url delegate:self];
- }
- -(void) onResp:(BaseResp*)resp
- {
- NSString *strMsg = [NSString stringWithFormat:@"errcode:%d", resp.errCode];
- if([resp isKindOfClass:[PayResp class]]){
- //支付返回结果
- switch (resp.errCode) {
- case WXSuccess:
- strMsg = @"支付结果:成功!";
- // NSLog(@"支付成功-PaySuccess,retcode = %d", resp.errCode);
- break;
- default:
- strMsg = [NSString stringWithFormat:@"支付结果:失败!retcode = %d, retstr = %@", resp.errCode,resp.errStr];
- // NSLog(@"错误,retcode = %d, retstr = %@", resp.errCode,resp.errStr);
- break;
- }
- }
- }
0 0
- ShareSDK微信支付成功不调用onResp、openURL、handleOpenURL等方法
- ShareSDK微信支付成功不调用onResp、openURL、handleOpenURL等方法
- 在使用微信支付时无法调用onResp数据反馈方法
- 微信支付 WXPayEntryActivity的onResp(BaseResp resp)方法 注意事项
- handleOpenURL 回调方法不调用
- handleOpenUrl && openUrl
- iOS集成微信支付的一些坑(onResp不回调、闪回等)
- 关于微信支付IWXAPIEventHandler接口中onresp不能调用的问题
- 微信支付 WXPayEntryActivity的onResp(BaseResp resp)方法 跳转处理的问题
- IOS微信第三方支付onResp方法不被回调的解决办法
- IOS微信第三方支付onResp方法不被回调的解决办法
- IOS微信第三方支付onResp方法不被回调的解决办法
- Android 微信没有走回调onResp方法
- 微信支付集成第一次调用支付界面成功,以后调不起来支付界面返回-1,等微信支付问题。
- 微信支付调用和支付成功后的跳转
- [坑]微信支付首次支付成功,第二次调用失败
- 微信分享后跳回项目,为何不执行onResp
- Android 微信支付,支付成功后不回调WXEntryActivity方法问题
- 结合MongoDB开发LBS应用
- SpringMVC源码剖析(四)- DispatcherServlet请求转发的实现
- 菜鸟的sql注入历程
- Android中的ListView和Adapter
- Python super()深度思考
- ShareSDK微信支付成功不调用onResp、openURL、handleOpenURL等方法
- MemCache详细解析
- iOS键盘弹出又消失的问题
- Java AtomicInteger
- jenkis 自动化部署的几种方式(git+maven)(svn+maven)(svn+tomcat)
- Starting VNC server: 1:root vncserver: geometry 800X600 is invalid
- JBOSS-7.1.1修改端口和取消访问权限
- 前端开发中的字符编码详解
- Windows 更新禁止安装某些驱动