Thursday, October 29, 2009

On Private APIs

I'm hearing from a couple of different sources that Apple's App Store reviewers now have some way to scan submitted applications to detect the use of private APIs. I've never been an advocate of using Private APIs, and Dave and I strictly avoid them for the book examples, but I always thought it strange that Apple left to the honor system any use of private APIs that couldn't be easily discerned.

Looks like you need to step more carefully now if you have used any private framework APIs.

I know this step will annoy some developers, but in the long run, it's for the best. Private APIs add fragility to an application, and they also discourage people from submitting enhancement requests, which are how Apple gauges whether a currently private API should be made public.



11 comments:

Muhammad Adil said...

Well its looks like a good news but i always wonder how to find these private apis do you know any place which document these apis? Or a way to find them?

Mike said...

You can find private API's with a header dump. Google is your friend.

Joel Bernstein said...

Honestly, I prefer this to the arbitrary rejection of coverflow lookalikes.

It's a simple rule, executed consistently, and with unambiguous consequences, which is exactly what we want Apple to be doing.

ctrlspace said...

does anyone know whether red laser sdk will be allowed?

schwa said...

I'm actually kind of surprised they're not doing this already.

It's an easy way to filter out bad apps relatively quickly.

Any remember Carbon-Dating your "classic" apps?

DadGuy said...

It's about time! I think it's horrible that people who play by the rules get punished for not using the private APIs. If you're going to crack down on that stuff at least make it consistent rather than arbitrary for the reviewers. I've run into this with UIWebView and had a hard time watching other apps dip into the private API where I wasn't. Kind of annoying.

Duane said...

We recently found out that they've changed the definition from "Private APIs" to "Undocumented APIs". We used some APIs that were in the Public headers (not in the Private headers) and were kicked back. Some things in the "Public" area are only documented for Snow Leopard, and considered off limits for iPhone

pippin said...

Well, if they do this consequently, a whole classes of Apps would have to be removed from the App Store, e.g. WiFi Scanners.

Edwin said...

scrub m65 kamagra attorney lawyer body scrub field jacket lovegra marijuana attorney injury lawyer

SEO Services Consultants said...

Nice information, many thanks to the author. It is incomprehensible to me now, but in general, the usefulness and significance is overwhelming. Thanks again and good luck! Web Design Company

h4ns said...

What youre saying is completely true. I know that everybody must say the same thing, but I just think that you put it in a way that everyone can understand. I also love the images you put in here. They fit so well with what youre trying to say. Im sure youll reach so many people with what youve got to say.

Arsenal vs Huddersfield Town live streaming
Arsenal vs Huddersfield Town live streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Notts County vs Manchester City Live Streaming
Notts County vs Manchester City Live Streaming
Bologna vs AS Roma Live Streaming
Bologna vs AS Roma Live Streaming
Juventus vs Udinese Live Streaming
Juventus vs Udinese Live Streaming
Napoli vs Sampdoria Live Streaming
Napoli vs Sampdoria Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
AS Monaco vs Marseille Live Streaming
AS Monaco vs Marseille Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Technology News | News Today | Live Streaming TV Channels