阵营由苹果拒绝本地二进制使用非公开的API

问题描述:

From Apple 
Performance - 2.5.1 

Your app uses or references the following non-public APIs: 

: setResult: 

The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change. 

我搜索术语setResult,我认为这是属于我用阵营由苹果拒绝本地二进制使用非公开的API

xxxx$ grep -Rnis 'setResult:' * 
Binary file ios/FBSDKCoreKit.framework/FBSDKCoreKit matches 
Binary file node_modules/react-native-facebook-login/FacebookSDK/FBSDKCoreKit.framework/FBSDKCoreKit matches 

有谁知道如何解决Facebook登录包这个?谢谢。

我建议在their Github project上提出问题。他们不应该使用私有API,我肯定会想知道它导致了App Store的拒绝。

编辑:OP发布了一个问题,它似乎并不是唯一与该问题。

https://github.com/magus/react-native-facebook-login/issues/155

+0

我明白了。让我先尝试打开一个问题,首先谢谢。 –

+1

这不是'FBSDKCoreKit'本身的问题吗? –

+0

看来你不能在facebook-ios-sdk github上打开一个问题.. –

我们遇到了同样的问题。 Apple因为名为setResult的方法而拒绝了我们的应用,该方法是FacebookSDK的一部分。这不是对非公开API的调用,而只是一个巧合使用相同名称的方法。

有人在developers.facebook.com上提交了一个错误。这是Facebook的回应:

大家好,

我和我们的移动SDK团队检查,并在我们的SDK源

的呼叫FBSDKCoreKit到的setResult还检查了这个自己 个人不私人API,它以 从螺栓框架此方法:

https://boltsframework.github.io/docs/ios/Classes/BFTaskCompletionSource.html#//api/name/setResult

目前没有任何计划改变我们对此方法的使用,并且它似乎被任何 苹果用来检测私有API使用情况的方式标记错误

我们建议您联系Apple并让他们再次检查你的应用程序 ,并确认不存在真正私有API的使用

我还问,如果我们的移动SDK团队可以联系苹果这一点, 但我不能确定这是我们可以做的

问候,斯蒂芬

错误报告:https://developers.facebook.com/bugs/294032807641661/

我们成功地上诉到应用程序审查委员会,通过解释为什么它不是一个私有API的调用。