| This is coming from a hobbyist mobile developer, so take the following responses with the appropriate perspective: "Actually it did. It just wasn't enabled for third party apps...." This is, to my mind, the worst continuing failing of iOS, so bad that we see a front page HN post related to it at least once per month. Apple builds its apps on private APIs, while third parties must build their apps on inferior public APIs. Apple gets to create and use new UX, while third parties must wait until Apple uses it first. On Android, Google's apps use the same APIs my own apps use. "Android just went for the "whatever" option, and let users deal with that." That's funny. Apple copied wholesale the Android save and restore data bundles model that was in Android from the beginning, and said, "Look at our battery-saving multitasking." "What about [normal filesystem access]?" It simplifies porting. What does Apple's system gain that you can't get by alternate APIs on top of the filesystem? Nothing, as far as I can tell. "Worse responsiveness" https://www.youtube.com/watch?v=hPhkPXVxISY
The Android apps are running on Dalvik on year-old budget hardware pushing more pixels. In a same-generation test, I would expect the outcome to be even more lopsided. "A Java runtime that they had to axe" How does this matter? It's as transparent to the developer as switching from Sun's client JVM to server JVM. It doesn't require so much as a recompile, unlike on iOS. "Audio latency issues" This is true, but it doesn't affect 99.9% of apps, unlike the first issue I pointed out. If you're developing an app for DJs, you already know about it. "2-3 releases to get a [sic] anywhere decent UI" It was many more releases than that. "Bad malware issues" Not by default -- only if you install apps from websites (requires users to click through a dialog that tellls them it's dangerous) or use a phone with a Chinese app store. You're buying Tim Cook's lazy marketing. None of the manual testing that Apple does before allowing an app on the App Store stops malware any better than the automated testing that gates publishing on the Play Store. Looking at allowing installation of apps from unknown sources from the other side, this lets me develop apps for my own phone for free, without paying a $99 / year tax. Even more than the private APIs issue, this is what made me jump on the Android bandwagon early on and makes it hard for me to understand why a person who enjoys software development would choose the iOS ecosystem. |
Yeah, it's called building a stable API. Not all APIs are ready for external consumption. Apple, since it controls the APIs and their internal apps can safely build on early APIs, since they can release in sync with any changes. Third party developers not so much. This is not some conspiracy or Apple "advantage", this is software development 101.
In fact, instead of third parties "having to build their apps on inferior public APIs", iOS's public APIs are way better, and offering more than Android APIs.
>That's funny. Apple copied wholesale the Android save and restore data bundles model that was in Android from the beginning, and said, "Look at our battery-saving multitasking."
After Android emerged a full year later than the iPhone, and with the same UI and interaction model (while just days prior to the iPhone's introduction Google only had keyboard sporting, classical-looking smartphone models as their Android mockups), there's nothing that can be said that iOS "copied" from Android with a straight face. iOS/iPhone was there first, and it set the way for all the major features. Heck, Android lead members even admitted so.
That Android, years after coming into life as an iOS clone, pioneered a few things here and there (most of which Apple worked on in secret anyway for years, like battery saving techniques) is not that impressive.
>Even more than the private APIs issue, this is what made me jump on the Android bandwagon early on and makes it hard for me to understand why a person who enjoys software development would choose the iOS ecosystem.
Because there are more things to enjoying software development than "hating closed systems" or not wanting to part with $100.