您的应用包含非公开的API使用情况 – 提交应用

我正在尝试将应用程序提交给与XCode连接的iTunes。 我得到这个:

您的应用包含非公开API使用情况。 请检查错误,纠正错误并重新提交您的申请。 应用程序引用Payload / myapp.app / setSoundsEnabled中的非公共select器:

我该怎么办?

我曾经遇到类似的问题。 这些错误是由于一些实现了“setSoundsEnabled”方法的第三方框架的旧SDK而发生的。 为了消除这些错误,您需要按照以下步骤操作:

  1. 打开terminal窗口。 运行以下命令:

    cd (drag and drop your project folder here) Your_Project_Path 

    现在,当前的工作目录将是你的项目文件夹。

  2. 使用以下命令查找所有使用“setSoundsEnabled”方法的SDK:

     $ find . | grep -v .svn | grep "\.a" | grep -v "\.app" | xargs grep setSoundsEnabled 

     grep -lr "setSoundsEnabled" * | grep -v .svn | grep -v .md 
  3. 获取框架列表后,search匹配查询的框架。 升级这些框架。

  4. 重新validation应用程序。

仔细检查您在项目中使用的任何第三方库

我正在面对这个问题,在检查了我的pod文件之后,我发现Look Back – Framwork只能用于debugging,就我所知。 所以删除,解决了这个问题。 成功通过Xcode 6.1提交的应用程序进行Apple Testflight betatesting:)