2.5: Apps that use non-public APIs will be rejected

Hi everybody

i got a rejection from App Store like this:

2.5: Apps that use non-public APIs will be rejected


The use of non-public APIs can lead to a poor user experience should these APIs change in the future, and is therefore not permitted. The following non-public APIs are included in your application:

Private spi symbol(s) in framework: ‘/usr/lib/libpcre.0.dylib’
+++ : pcre_compile
+++ : pcre_exec
+++ : pcre_free
+++ : pcre_free_substring_list
+++ : pcre_get_substring
+++ : pcre_get_substring_list
+++ : pcre_malloc
+++ : pcre_study

If you have defined methods in your source code with the same names as the above-mentioned APIs, we suggest altering your method names so that they no longer collide with Apple’s private APIs to avoid your application being flagged in future submissions.

Additionally, one or more of the above-mentioned APIs may reside in a library included with your application. If you do not have access to the library’s source, you may be able to search the compiled binary using “strings” or “otool” command line tools. The “strings” tool can output a list of the methods that the library calls and “otool -ov” will output the Objective-C class structures and their defined methods. These techniques can help you narrow down where the problematic code resides.

If you are unable to reproduce this issue, ensure you are testing the exact version of the app that you submitted for review, and that you’re doing so in a minimally privileged environment. See Technical Q&A QA1778: How to reproduce bugs reported against Mac App Store submissions.

For discrete code-level questions, you may wish to consult with Apple Developer Technical Support. Please be sure to:

  • include the complete details of your rejection issues
  • prepare any symbolicated crash logs, screenshots, or steps to reproduce the issues for when the DTS engineer follows up.

For information on how to symbolicate and read a crash log, please see Technical Note TN2123 - CrashReporter.

My application “Word Count Professional” is on the Store from January and two day ago i update it with a new function.

But this time APP Store reject due reasone above.

Does anybody help on how to fix it?

Many thank in advance



If I was a company who’s product was suddenly crippled to so many of my users I’d push an update out pretty fast…

I love Xojo, but the gotchas like these are what concern me for the future.

They are. The issue was the last build did not have the library statically linked. This is fixed for the 2.1 update coming.

[quote=109813:@Tim Parnell]If I was a company who’s product was suddenly crippled to so many of my users I’d push an update out pretty fast…
2.1 is already in the works and actually has been for more than a week.
That work started the day after 2.0 went out as we were notified of a couple glitches VERY late in beta or very soon after release.
Theres been a handful of glitches in 2.0 that we are fixing ASAP
They still have to be found, fixed, tested internally, releases built and betas shipped out for people to make sure we nailed them.

If you look at how fast the QuickTime issue got solved, it shows Xojo is very responsive.

Thanks Gavin for the link