ios支付宝集成各种血泪坑

1.私钥不能读取

read private data error

因为是先搞的安卓,所以前部分申请,上传公钥都是安卓那边的同事做了,于是我直接从同事那里拿了私钥和公钥。

不能读取怀疑过私钥没转pcks8,但是我自己在mac上转报错unable read data。。。

所以我以为这个是转过的所以不能再转。坑死了,直到后来我自己生成了一个私钥,转格式后可以过签名函数,发觉不太对。但是对应公钥的必须只有一个私钥。

后来问了支付宝的技术支持才知道,安卓的私钥不需要转pcks8,ios的才需要。这个我们没沟通,简直被坑死了。

2.支付宝加入后编译没法通过

i386什么的报错,指的是在模拟器环境下。。

rvm64报错是指不支持64位。这个我在网上搜了很多这方面的问题。我在加入另外一个js交互项目后也出现这个编译问题。然后我把framework重现加了一遍就好了,别问我为什么,我也不知道。但是我在别人的文章看到过这个做法。大致是如果几个包都调用某个库可能路径有冲突,删掉重新加载就好了。

 

rm7报错,这个是今晚遇到的。最近两天得回家干活,于是奇怪的事情就出来了。公司好好的,晚上回家就各种报错。一种问题,是公司用真机测试,回家开模拟机,甚至模拟器没有选择,导致空设备编译,坑死了。找了半天,选择模拟器就对了。

今晚我把测试机带回家,结果发现模拟机编译ok,真机编译就出现rm7错误,网上查都是DataSigner.m改成DataSigner.mm,问题是新的SDK这个都是封装成.a的静态库了,只有头文件调用啊。于是我查查查,头发都快熬白了,没有找到哪里有问题。关键是支付宝给的demo真机运行是ok的。

好在博主今天干了两件糊涂事,一件是忘了git c代码了,一件是在忘了备份代码的情况下搞C++混编,各种配置被我乱改了一气。于是我打算苦逼重写时,当当当当,我发现回去最原始也不行。那就只有配置和Demo的有区别了,一项一项对配置,然后发现Building Settings里的Deploment里最后一项:

 

这个参数Demo里是ios7.0,我的里面是7.1,改回7.0,编译就ok了。我测试机版本是7.1.2.关键这个参数我没动过啊,我发誓。

不要问我为神马?知道为神马的客官们请留言解惑。。。泪流满面来写博,记这个难忘的晚上。再不git小鞭抽打。。。~~~~(>_<)~~~~ 

3.js交互

博主交互渣,好在同事很友好,个中今晚不写了。现在回头看我转的几篇交互的文,都弱爆了。下次再来总结。碎觉。。。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。