应用程序被拒绝 - 如何证明没有使用私有API

3
我最近提交的一个应用程序因为调用了一个私有API(hideKeyboard)而被拒绝了。有点不幸的是,相关的代码片段是我从网上找来的,后来决定不使用它了。虽然这段代码从未被调用过,但我忘记删除它了(而且我也不知道它调用了一个私有API)。
于是,我删除了这段代码并重新提交了应用程序,但是它又因同样的原因被拒绝了。
我搜索了所有的代码和任何第三方库,但没有发现问题。然后我在原始应用程序二进制文件上使用了strings工具,并验证了hideKeyboard确实存在。最后我在新的二进制文件上使用了它(也提交给了苹果),但没有发现它的踪迹。
我怀疑苹果可能再次扫描了第一个二进制文件——这里有人遇到过这种错误吗?
是否有任何工具可以证明我没有调用“hideKeyboard”函数?
我已经提出了申诉,但我担心这会变得混乱,并且现在需要很长时间才能解决。
谢谢,
Tim

你确定你把正确的新代码推送到了苹果吗? - Melvin
那是我的第一反应,但我只提交了两次,而且在Xcode组织者中,这两个存档都标记为“已提交”。此外,我修复了第二个问题,在审核期间没有引起问题,所以他们必须至少测试了第二个二进制文件。 - tarmes
2个回答

3
自从Xcode 4.3以来,您可以检查私有API的使用。但只要Xcode处于beta模式,您就无法使用它进行提交。 因此,只需安装它,在组织者或直接在项目构建设置中尝试验证您的应用程序(“验证构建产品”设置)。 修复可能存在的所有问题,然后重新提交您的应用程序。然后就可以了 ;)

1

苹果在重新扫描旧二进制文件时确实犯了一个错误。该应用程序已经快速审核并被接受。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接