iOS App拒绝了cocos2d-x和libCurl上的非公共api(与SSL相关) [英] iOS App rejected non public api (SSL related) on cocos2d-x and libCurl
问题描述
我刚刚提交了供审查和基于cocos2d-x(C ++)和libcurl构建的应用程序.
I just submitted for review and app built on top of cocos2d-x (C++) and libcurl.
我正在使用具有SSL支持的libcurl,以便从Facebook下载个人资料图片
I m using libcurl with SSL support in order to download profile pictures from Facebook
当我从组织者验证我的应用程序或尝试分发时,出现以下错误:
When I validate my app from organiser or trying to distribute I get the following error:
您的应用包含非公开API使用情况.请修正错误..
Your app contains non public API usage . please reviex the errors..
该应用在Payload/.... app/{appName}:SSLCopyPeerCertificates,{appName}:SSLDisposeContext等中引用了非公共符号.
The app references non-public symbols in Payload/....app/ {appName}:SSLCopyPeerCertificates, {appName}:SSLDisposeContext etc..
当我在应用程序中搜索此函数时,没有找到匹配项,但我认为它与libcurl有关,因为我没有在与libcurl相关的代码中使用SSL Expect
When I search for this functions in the app I get no matches, but I think it s related to libcurl as I dont use SSL expect in code related to libcurl
有什么建议吗?
我向苹果发送了一条消息要进行审查,但我担心这可能会很长.
I sent a message to appreview at apple but I m afraid this might be long.
错误的屏幕截图: http://accessdev.s3.amazonaws.com/apps /ssl_reject.png
预先感谢
推荐答案
我建议使用最新的libcurl版本,即撰写本文时的7.28.1版本.其中包括与iOS本机SSL API相关的一些修复程序,请参见:
What I suggest is to use the latest libcurl release, i.e. 7.28.1 version at the time of writing. This includes several fixes related to iOS native SSL APIs, see:
- http://curl.haxx.se/mail/lib- 2012-10/0142.html
- https://github.com/bagder/curl/commit/f1d2e1850819f54d1c950989614da7445bdd457f /li>
- http://curl.haxx.se/mail/lib-2012-10/0142.html
- https://github.com/bagder/curl/commit/f1d2e1850819f54d1c950989614da7445bdd457f
我认为这应该可以解决您的问题,而不是您不应该使用的各种符号(SSLDisposeContext
等).
I assume this should solve your issues vs the various symbols your are not supposed to use (SSLDisposeContext
, etc).
如果我指的是Nick的 libcurl 7.28.1 iOS版本找不到在您附加的Xcode警告窗口内列出的非公开符号:
If I refer to Nick's libcurl 7.28.1 iOS build the non-public symbols that are listed within the Xcode warning window you've attached can't be found:
$ xcrun -sdk iphoneos nm -j -arch armv7 libcurl-device.a 2>/dev/null | grep SSL
_SSLClose
_SSLCopyPeerTrust
_SSLCreateContext
_SSLGetBufferedReadSize
_SSLGetNegotiatedCipher
_SSLGetNegotiatedProtocolVersion
_SSLGetSessionState
_SSLHandshake
_SSLRead
_SSLSetConnection
_SSLSetIOFuncs
_SSLSetPeerDomainName
_SSLSetProtocolVersionMax
_SSLSetProtocolVersionMin
_SSLSetSessionOption
_SSLWrite
当然,armv7s
体系结构也是如此.
Of course the same applies with the armv7s
architecture.
这篇关于iOS App拒绝了cocos2d-x和libCurl上的非公共api(与SSL相关)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!