应用提交苹果测试之前一般都会在沙盒环境里进行测试充值。用沙盒的测试帐号进行充值的时候服务端拿到苹果返回的receipt-data后向苹果服务端进行校验的时候如果返回错误码21007则再去沙盒环境去验证。
而最近一次提交的时候后台log发现拿到客户端提供的串向苹果服务器校验的时候返回的是21002不是预期的21007而打包检查充值那一块并没有任何的变更后台排查发现可能是用的第三方库它用的是旧版本的Xcode生成的而我们这次提交的包用的是最新的7.3 Xcode生成的。重新编译第三方库之后再进行测试发现一切正常了返回预期的21007然后去沙盒验证就通过了。附上苹果充值验证返回的错误码
<a href="https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html" target="_blank">https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html</a>
