Update: Apple scanning process producing false positives for “private APIs”

Circuit board and shield icon on blue background with digital code

Update, 7:37am PST, 11/15/11
According to community members on the original thread in Q&A, Titanium apps are now being accepted into the app store. While we have not yet confirmed this with an Appcelerator submitted app, it seems many people have had their apps accepted now. From these reports, it seemed some people had used our latest hot fix (below), but some had not. At this early juncture, it seems that Apple has rolled back their scanner changes that were triggering false positives for private APIs.

We will update when we have official word on the resolution, but once again, we are now starting to see reports of apps being accepted.

Original Post
Since it initially came to our attention on Friday, we have been attempting in our iOS SDK to work around an issue with common dictionary words, used innocuously in Objective-C code, registering false positives in Apple’s “private API” scanner during app store submission. This is a widespread problem introduced by recent changes in Apple’s scanning logic, affecting non-Titanium applications as well.

After a few attempts, we now have a fix checked in to our master, 1.7.x stable, and 1.8 “last known good” branches which we believe should resolve the problems we’ve seen. We are in the process of verifying this fix in the Apple App Store as we speak, and will update with any progess. To install and use this special build yourself, you can download and install it via the brief instructions below.

Thank you for your patience, and we will release any new information as soon as we have it.

To get the latest 1.7.x build, go here. After installing the new build (screenshots below), change the Titanium SDK version in the visual editor for tiapp.xml, and clean your project in Titanium Studio. You should then be able to rebuild with the latest Titanium version.



  1. Signing out for the day but we had an idea – anyone want to try it and let us know?

    Run a python script to convert all strings to ASCII and convert back at runtime -pain in the 455 but need to get something working….

  2. I can confirm that Apple has been accepting Titanium builds, unless this is a very new development. Just submitted an app about two weeks ago and had no trouble with this.

  3. I followed the above procedure, installed the 1.7.6… and I am still getting the EXC_BAD_ACCESS error on the device.

  4. Another confirmation of an app approval. App was submitted prior to knowledge of this issue and was approved in under a week.

  5. I submitted today my app built with 1.7.5, I got the alert message when uploaded. What would you racommend?? Rebuild or Just wait?

Comments are closed.