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 优化后 支付宝崩溃问题解决

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

时间: 2024-08-05 05:47:27

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

iOS支付宝集成详细流程

实现支付宝支付的准备工作: 1.向支付宝签约,成为支付宝的商户 签约完成后,支付宝会提供一些必要的数据给我们 商户ID:partner 账号ID:seller 即支付宝账号 签约需要营业执照 2.获取支付相关的  私钥和密钥,这两个东西为了数据安全 上面这几个东西只要签约成功就可以看到 3.下载支付宝的SDK 下载网址: http://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1 上面部分是准备工作

ios支付宝集成各种血泪坑

1.私钥不能读取 read private data error 因为是先搞的安卓,所以前部分申请,上传公钥都是安卓那边的同事做了,于是我直接从同事那里拿了私钥和公钥. 不能读取怀疑过私钥没转pcks8,但是我自己在mac上转报错unable read data... 所以我以为这个是转过的所以不能再转.坑死了,直到后来我自己生成了一个私钥,转格式后可以过签名函数,发觉不太对.但是对应公钥的必须只有一个私钥. 后来问了支付宝的技术支持才知道,安卓的私钥不需要转pcks8,ios的才需要.这个我们

iOS 支付宝 集成

现在不少app内都集成了支付宝功能 使用支付宝进行一个完整的支付功能,大致有以下步骤: 1>先与支付宝签约,获得商户ID(partner)和账号ID(seller) (这个主要是公司的负责) 2>下载相应的公钥私钥文件(加密签名用) 3>下载支付宝SDK(登录网站:http://club.alipay.com/) 里面提供了非常详细的文档.如何签约.如何获得公钥私钥.如何调用支付接口. 4>生成订单信息 5>调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道 6>

iOS支付宝集成时遇到的问题整理(1)

1.模拟器上运行正常,但是真机调试时报编译链接错误 :ld: '/Users/wangqipeng/Desktop/iOS支付宝官方文档/AlixPayDemo/libcrypto.a(bio_lib.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or

IOS支付宝集成一系列问题

问题 解决 这个也是路径错误, 解决办法:在自己工程文件夹里建一个文件夹,随便起什么名字.把支付宝所需要的东西都拷贝进去,然后add files,然后找到TARGETS-Build Settings,在里面找到如下位置 把自己新建的文件夹拖动到这个框里面,再次运行就OK了,如果不行可以再多试几次 问题 如果遇到运行后报错,类似于以下提示信息: Cannot find interface declaration for 'NSObject', superclass of 'Base64' 解决 那

iOS开发之支付宝集成

项目中要用到支付功能,需要支付宝,微信,银联三大支付,所以打算总结一下,写两篇文章,方便以后的查阅, 大家在做的时候也能稍微参考下,用到的地方避免再次被坑.这是第二篇支付宝集成,第一篇银联支付在这里.本来要用那个ping++的神器,可以集成各种支付手段,异常的方便,但是考虑到安全性问题的话,支付的渠道还是不让第三方参与的好,不然会不安全,于是就苦逼地慢慢的一个一个集成了....这里就代理支付宝的集成过程: 刚开始以为支付宝集成还是比较简单的,看了几个文章,网上的各位大神也是各种秀操作,说集成很简

iOS开发:集成支付宝(遇见的坑和便捷撸代码)

开发iOS最重要的就是支付了,天朝之内最常用的就是支付宝了,下面就以自己的经历说明如何集成支付宝+遇见的坑. 首先,集成支付宝最好别使用Cocoapods,很多人都说使用起来很方便,可是我每次只要使用Cocoapods导入支付宝SDK,总是出现各种莫名其妙的错误,并且还每次都不一样,最终,我只能手动导入. 其实可以使用ping++和其他更为方便.如 http://winann.blog.51cto.com/4424329/1601654 https://www.pingxx.com/ 以自己集成

iOS app集成支付宝支付流程及后台php订单签名处理

iOS app集成支付宝支付流程 1: 开通支付宝商户 由公司去支付宝 https://b.alipay.com/order/serviceIndex.htm 签约支付宝开通支付宝商家: 2:商户支付宝开通无线支付功能 开通商户支付宝之后,虽然可以获取到应用使用的 key和id,如果如果不开通无线支付功能的话,会在app集成的时间 提示商户未开通无线支付功能的错误: 开通商户支付宝-无线支付功能,请在商户支付宝后台,按要求提供审核材料开通: 3:在商户支付宝后台下载SDK 在商户支付宝后台,即可

李洪强iOS之集成极光推送二iOS 证书 设置指南

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #000000 } span.s1 { } span.s2 { font: 18.0px Menlo } 创建应用程序ID 登陆 iOS Dev Center 选择进入iOS Provisioning Portal. 在 iOS Provisioning Portal中,点击App IDs进入App ID列表. 创建 App ID,如果