Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Fails to distribute my app: "Your app contains non-public API usage."

Tags:

ios

iphone

After I fixed some bugs and refactored my project which has been release on App Store, it fails to distribute. The Xcode shows the following error message:

  • Your app contains non-public API usage. Please review the errors, correct them, and resubmit your application.
  • The app references non-public symbols in Payload/XXX.app/XXX: UICreateCGImageFromIOSurface

XXX is the app name.

I've search the entire project, and didn't find any this keyword (UICreateCGImageFromIOSurface). How can I fix this?

like image 598
Xaree Lee Avatar asked Feb 17 '14 12:02

Xaree Lee


2 Answers

Remove Reveal.framework from your project. This should not be linked in release mode of your binary.

like image 198
Apurv Avatar answered Oct 04 '22 11:10

Apurv


You app contains code not only from sources, but from all statically linked libraries. You have to check all of those for containing private call. Looks like at least Reveal library contains it.

like image 37
bealex Avatar answered Oct 04 '22 12:10

bealex