iOS

微信支付支付取消重新支付崩溃

2018-09-06  本文已影响10人  CYC666

崩溃操作:

1、生成订单:支付-唤起微信支付-取消支付-回到APP-订单详情

2、订单详情:返回上个页面-生成订单

3:生成订单:支付-唤起微信支付-取消支付-回到APP

4:崩溃

分析:

1:生成订单页面有支付操作,故添加了当前控制器为代理

[WXApiManager sharedManager].delegate = self(生成订单控制器);

2、订单详情页面也有支付操作,也添加了当前控制器为代理

[WXApiManager sharedManager].delegate = self(订单详情控制器);

3、回到生成订单再次唤起支付,支付操作结束后会响应代理方法,此时不知何种原因,订单详情页的代理方法还会走,但是订单详情页已经不存在了,所以会产生野指针,崩溃。

解决:

订单详情页销毁的时候,将代理权去掉

[WXApiManager sharedManager].delegate = nil;

上一篇下一篇

猜你喜欢

热点阅读