iPhone, Apple, and private API calls: Round 2
  • 24 Comments
by John Biggs on December 29, 2008

pedestrian_barrier_gate

John Gruber tackles private APIs again on Daring Fireball, noting that even some homegrown solutions to mimic iPhone private API calls has been banned inexplicably by Apple.

The API in question is Cover Flow. Most internal Apple applications have access to the coverflow system but when a coder decided to mimic the system, his product was banned for using a private API. In fact, Apple has been timebombing some of the APIs, allowing folks to use them and then pulling the plug on them down the line.

Again, this is inside baseball but it’s interesting to see an API grow and mutate over time and see the problems with keeping things closed in general. Sure, you get great quality software 90% of the time – as opposed to 70% in the Windows world – but you get plenty of headaches.

There is no real technical barrier, at least in Cocoa and Cocoa Touch, that prevents third party software from calling private APIs. The public/private distinction is a social barrier, not a technical one. The difference, from a developer’s point of view, is that public APIs are more than just a list of what works now; they constitute a promise, a commitment, from the platform provider of what will continue to work in the future.

A private API call is subject to change or vanish in the future. There is some reason why a private API is private. Could be that it is here to stay, that the platform vendor simply hasn’t gotten around to documenting it yet. But it could just as easily be a stopgap that the vendor intends to completely replace. And when the platform vendor in question is an opaque entity such as Apple, you just don’t know.

Comments rss icon

  • How many people think Apple’s attitude and handling of 3rd party apps push people from the iPhone to Android? Or is Apple’s usability advantage big enough that the masses won’t care?
    I use both Windows and Mac, see them as tools rather than a movement/culture to be loyal to, and am looking at porting an app to a mobile client. I don’t want to support both platforms. Which platform would you pick?

    • I’d say Apple FTW, warts and all. The app store is a bustling marketplace compared to the Android “market”

      • John,

        Android Mareket’s number given first amount of days show a faster increase in sales than Apple’s..

        Also Android’s deployment to Mobile Operator numbers for 2009 ar double what Apple’s are

        • I agree – I have a bunch of Apple stuff and a PC stuff too (like lots and lots of both), including iphones and ipod touches … but I really can’t see Apples attitude toward its development community lasting too much longer. The walled garden approach has worked for them in the past but the world is changing – consumers are becoming more tech savvy and more aware of other ‘options’ such as Android-based phones – and ultimately Android-based media players.

    • Most consumers don’t give a flying fuck about this API issues. Most don’t even know that it’s going on. Android is having it’s ass handed to it because of Apple’s massive marketing efforts. I can’t tell you when I’ve seen a G1 commercial, but I can’t count on two hands the number of iPhone commercials I’ve seen just this weekend.

      As much as Apple’s handling of the situation is infuriating and just plain backwards, they are still the one people are going to want.

      • I agree with the iPhone’s current dominance, but Google is playing for a lot more than the G1; they are trying to pull the established players in to.

        The other part is Apple’s ability to one day yank an app they see as overlapping with built-in technology (e.g., http://news.cnet.com/8301-13846_3-10041187-62.html).

        iPhone is dominate now, but I don’t know if Apple’s overall stance (not just having someone use a private API but being closed) could push developers to a potentially more ubiquitous platform later.

  • It states pretty plainly in the SDK documentation that private APIs are not supported and likely will be removed at some point. Saying Apple has been timebombing is sort of misleading considering that the developers are quite likely well aware that they run the risk of an API being removed…

  • i think Apple philosophy is the reason of the success of the app store. some apps can be crap as far as what they accomplish, but you know you are not installing anything that is going to compromise the functionality of the phone.
    I’m never afraid to install anything on my phone cause i know it won’t mess anything up.

    Close systems are always more stable and safe than totally open ones…

    • Actually, if you ask most security experts, open systems are far more secure than closed ones because they get pounded on by all sides.

      But, stability’s a different issue, particularly on the mobile side. I understand why Apple does what it does, but I still can’t believe they can’t figure out a better solution for background apps.

    • “Close systems are always more stable and safe than totally open ones”

      You moron, so Windows XP is safer than Linux? iDiot.

      • If you think that Linux is more safe than Windows then you are the moron. They are both weak.

      • And how is Windows a closed system again? Last I checked anyone could write and deliver software for it straight to the consumer. The business model of the OS maker is not equivalent to open/closed in this context. Perhaps better terms than open/closed would be mediated/disintermediated. Consumers do show a preference for mediated platforms at times.

  • I don’t think users as per se would care about all this, as long as they get quality apps to choose from. Infact they may not even know about all this.

    On the other hand it would matter for developers for which platform to write the apps for. which again would be decided by the reach of the devices iPhone versus Android.

  • I think we will see the android and similar phones grow in marketshare, but I’m not sure if they will catch up with the iPhone. And even if the PVT API issue bugs developers, this model has worked really well for Apple and Apple isn’t likely to make too many changes until is has to.

    Biggest problem for the android is no support for Enterprise mail. But the 1st gen iPhone lacked that too, so give it some time.

    More open systems will come in time if the stability issue can be addressed. Developers act like little children however, if they view closed APIS as “promise” of what is to come.

  • I was initially confused by what you meant by mimicing of private api calls because you mention that Apple’s timebombing of some apis would affect developers using them. The developer created his own version of cover flow for his app and then was banned by Apple because they THOUGHT he was using a private API. Timebombing would not affect that developer’s own implementation of cover flow.

  • Fred,

    Would you mind sharing where you get your numbers on Google marketplace versus Apple appstore sales growth?

  • This whole article is full of errors of fact and implications.

    1. Apple does not “time bomb” private API’s; it tells devs that they do useful work but may be modified or replaced in future OS versions for reasons that every dev understands — functionality, performance and reliability.

    2. The app with fake cover flow was banned because the doc claimed to use cover flow, which — by the developer’s apparent claim — would have violated Apple’s quality standards for apps. Once the dev’s mistake was cleaned up, the app went into the store.

    3. The Gruber article never suggested the removal was “inexplicable.” In fact, it did some (gasp!) actual background research, went into the reasons and found them … reasonable.

  • What’s an API? Oh look, I just found a useful app on the App Store that I’ll spend money on and generate money for Apple and the developer. I guess the rest of you can download some Android POS application that will generate nothing for anyone.
    Interesting.

  • As a personal iPhone user, and someone who bought a G1 for unlocked international work travel, I can say… the G1 isn’t there at all, yet. Like all things google, it’ll eventually catch up/become a best of breed tool, but I really see them eating up the bottom of the market, and even then mostly in corporations…

    As far as APIs go, think of it this way: right now, Apple has a great method to keep crappy apps from killing our phones… And if competition ever starts driving devs AWAY on the grounds that the API is closed, ALL Apple needs do at that point to retain them will be to open up.

    They just don’t need to do it yet, because there is no competition worth noting.

  • Didn’t this used to be a huge issue when Microsoft did it?

    Personally, I believe its Apple’s platform and they can do what they want.

    But if Microsoft did the same, they’d be going to court. A double standard if there ever was one.

    Still, I prefer Mac over Microcrap.

  • Apple Fan-Boyz will believe the hype forever.

    They’re non-technical, t0tal end-users who feel “smart” when they hobble around a spoon-fed OS.

    Fan-B0yz: Go foreward and learn. Android/open OS has so much to offer. Leave your little, safe sandbox, in which you feel safe because Apple’s protecting you, and move forward. Learn and partake!!!

  • Would you mind sharing where you get your numbers on Google marketplace versus Apple appstore sales growth?

Leave Comment

Commenting Options

Enter your personal information to the left, or sign in with your Facebook account by clicking the button below.

Alternatively, you can create an avatar that will appear whenever you leave a comment on a Gravatar-enabled blog.

Trackback URL
bugbugbug