14年的时候苹果就下发通知:新的上线项目必须适配64-bit,更新的项目在2015年的六月一号以后也必须适配64-bit刚开始的时候没注意到这个问题,当打包完自己项目的时候,居然在适配64-bit的时候出现了一个警告,
看了一下,大概的意思也就是说,我的项目没有适配64-bit,我勒个去,上个版本还没有提示这个,这个版本居然冒出这个警告了。眼看着六月一号也即将到来,十天时间,以苹果的审核进度不一定过的了,万一中间再出个小插曲,估计上线得一个月了,加速审核苹果不一定买帐。迟早要做64bit的适配的,干脆就现在做了吧。
于是按照流程将工程中更改的地方进行了更改
此处更改后,编译工程文件,居然报错了
这个项目是我从同事那边接手过来的,了解了一下,当时他们起手这个项目的时候,用的SDK是用的32位的
现在苹果来了这个适配需求,就得重新返工了(特别注意,在接入第三方SDK的时候,最好到官网下载最新的版本,更换SDK很蛋疼的,特别是别人的项目)。好吧,更换就更换吧,首先从微信SDK更换开始。于是我到官网上下载了个最新的版本(嗯,明确说了支持64-bit),微信支付更换SDK代码还不多,只需要将SDK换成最新的,同时,换成最新的以后,其中有一个方法会报错,需要将safeSendReq:换成sendReq:即可。嗯,全部替换完成以后,测试一下,微信支付正常,可以正常付款,后台查询也成功到账了。多测了几次,折腾这个,测试就花了我几块钱,公司不给报销。微信支付算是告一段落了。
现对于微信支付而言,支付宝支付的变动就大了很多,除了更换SDK以后,还得改代码,不过总的来说,支付宝新的SDK还算是比较人性化的,在接入代码上面精简了不少,按照官方文档,正常的接入SDK就可以了,官方文档上面对于可能出现的各种错误有很详细的讲解,需要说明一点的是,在使用官方文档接入的时候,在appdelegete里面的
这个方法的时候,居然没有返回支付结果,完全按照文档要求接入的呀。没办法,重头捋一遍,重新接入,居然第二次又可以了,网上搜了一下,用[[AlipaySDK defaultService] processOrderWithPaymentResult:urlstandbyCallback:^(NSDictionary *resultDic) {
}];
也可以成功返回。测了一上午的支付宝支付,付款全部到账,总算是搞定了支付功能的SDK更换,编译通过。打个包,包也正常,提交上去,警告也消失了,静待苹果审核通过了。
在适配64-bit这个问题上,注意下载SDK的时候,一定要到官网上面去下载最新的,不要用那种以讹传讹的,兴许是好久之前的,亦有可能存在很大的BUG。