MacOs拒绝非公开API

r4i*_*id4 6 macos xcode itunesconnect

我的应用因non-public api电话而被拒绝了.

框架:'/System
/Library
/Frameworks /Foundation.framework /Versions /C /Foundation ' :_ NSErrorWithFilePath :_NSErrorWithFilePathAndErrno

grep在项目文件夹上找到了一个找到这些方法,就像我在另一个StackOverflow问题上找到的那样,但grep没有提供任何东西.

    grep -R '_NSErrorWithFilePath' *
    grep -R '_NSErrorWithFilePathAndErrno' *
Run Code Online (Sandbox Code Playgroud)

我怎样才能找到这些方法的位置?

编辑: 我试图导出.app文件,并在它上面我找到了一些东西

Binary file myAppName.app/Contents/Frameworks/libswiftFoundation.dylib matches
Run Code Online (Sandbox Code Playgroud)

什么是解决这个问题的最佳方法?

解决了
从App Review Board得到这个答案:

感谢您联系App Review Board.

App Review Board已完成对您的应用程序申诉的审核***并确定此版本的应用程序未违反指南2.5.1.

我们很快就会将应用程序放回审核流程中.

感谢您对Mac应用程序开发的承诺.

Shin Y. App Review Board

所以显然这是他们身边的一个问题,现在我的应用程序因为今天上午的"审查"而被困,我随时向您发布.

ine*_*tus 0

我的应用程序因同样的原因被拒绝大约 1 小时前。

几周前,我的一个应用程序因同样的原因而被拒绝,但原因是另一个框架。当时这是一场虚惊,现在我百分百肯定是这样。

我要求 Apple 再次检查我的应用程序。

请记住,您不必使用私有 api 才能获得拒绝。如果签名大致相同就足够了。

我的应用程序被拒绝,因为它说我正在使用具有以下签名的“CFHashByte”构造函数:

CFHashBytes(uint8_t *字节, CFIndex 长度)

我的应用程序有一个名为“getBytes(UInt8 bytes, index: Int, length: Int)”的函数。签名很相似,尤其是命名和类型。所以也许这就是自动检查检测到此私有 API 调用的原因。

因此,也许检查您的应用程序是否有类似的签名。否则,只需在您收到错误报告的 iTunes Connect 部分向 Apple 写一条消息即可。

TL;DR:检查您的应用程序是否有具有相似签名的函数。

问候,萨沙