iOS支付宝集成后出现崩溃的调试总结

前两天的项目中

[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {
NSLog(@"reslut = %@",resultDic);
}];在运行到这的时候就崩溃了

就崩溃在这个函数,估计在支付宝的SDK里面崩溃,由于支付宝SDK封装了,所以崩溃在这个接口,当时有三个控制器有支付宝支付,其他的两个控制器没有崩溃现象

调试方法:

1)和其他支付宝控制器传入支付宝的参数仔细比较,发现没问题,排除参数问题

2)将的调用支付宝的接口在  ViewDidLoad 里面调用,发现不崩溃,依照类似的方法一步步的延迟支付宝的调用,终于移到特定一行代码之后就出现崩溃,移到特定的代码之前就不崩溃

     确定是这一行代码对支付宝SDK 造成的干扰,这一行代码是一个set方法 里面又有30行左右的代码需要执行

3)检查set 方法里面的代码发现搭档在写  view.layer.color = [UIColor  redColor]时候使用了桥接,而且在set方法里面有剪圆角,将剪圆角的操作移到awakefromnib 中

    view.layer.color = [UIColor  redColor]加桥接    改为view.layer.color = [UIColor  redColor].CGColor  

   按照步骤3 优化后 支付宝崩溃问题解决

总结:写代码的时候一定要按照常理出牌,不按常理出牌容易引起莫名其妙的问题。

      

 
 

转载于:https://www.cnblogs.com/ios-wang/p/4943760.html

你可能感兴趣的:(iOS支付宝集成后出现崩溃的调试总结)