Apple Pushes Developers To iOS 7
Hugh Pickens DOT Com writes "Chuong Nguyen reports that Apple is forcing developers to adopt iOS 7's visual UI for their apps, and has advised iOS developers that all apps submitted after February 1, 2014 must be optimized for iOS 7 and built using Xcode 5 ... 'It's likely that Apple is more anxious than ever for developers to update their apps to fit in visually and mechanically with iOS 7, as it's the largest change in the history of Apple's mobile software,' says Matthew Panzarino. 'iOS 7 introduced a much more complex physical language while stripping out many of the visual cues that developers had relied on to instruct users. For better or worse, this has created a new aesthetic that many un-updated apps did not reflect.' Most app developers have been building apps optimized towards iOS 7 since Apple's World Wide Developer Conference in June 2013. Apple has been on a push over the past couple of years to encourage developers to support the latest editions of its OS faster than ever. To do this, it's made a habit of pointing out the adoption rates of new versions of iOS, which are extremely high. Nearly every event mentions iOS 7 adoption, which now tops 76% of all iOS users, and Apple publishes current statistics. In order to optimize apps for the new operating system, they must be built with the latest version of Xcode 5 which includes 64-bit support and access to new features like backgrounding APIs."
iOS7 would have gotten Jony FIRED if Jobs were still alive. Give the man a gong, and "Sir" Ives fucks everything to hell.
The man was a great PHYSICAL designer of cases and objects. Not allowed near software UXD in Steve's lifetime. Now you know why.
Nothing works well, any longer - shadows and reflections or not. The laundry list of how screwed the music app deserved a post of its own.
Red chevrons? REALLY? Lotus Notes, Borland SideKick and ccMail.
"Flyin' in just a sweet place,
Never been known to fail..."
I hate how this is breaking support for iOS 5.1.1 only devices like the iPad 1. My mother-in-law is not technically inclined, but uses an iPad1 for banking and watching TV shows. Both apps have broken support for iOS5 in favor of iOS7. This makes a device she paid good money for only a couple years ago a paperweight. My Motorola Xoom I bought at roughly the same time is going strong and running a very current version of Android. This kind of thing is just a normal function of technology every 4-5 years+, but not 2 or less. Unfortunately for Apple her next device will be an Android. Cheaper and obsolescence proof for much longer.
... does this mean there is no way to turn off "automatic updates" in an Idevice ...
A user of an iOS device does not have to upgrade. The check for an update is automatic, the installation is not.
Its more of an issue for developers. The development tools sometimes make it difficult to support older versions of iOS. At the moment iOS 6 is well supported so there really is not much of a problem to have your app target both iOS 6 and 7.
Normal development cycle. What is the story here? That iOS 7 is successful?
The only thing worse than a Democrat is a Republican.
That's like arguing that "See! Millions eat at McDonald's that it *must* be gourmet food!"
Popularity != Quality.
iOS is a total clusterfuck of bad UI/UX design principles. Gee, let's flush everything we know about making GOOD UI right down the toilet and use a retarded flat-shading to conflate the UI S/N.
Apple *now* believes anti-skeuomorphism is the One True Way; the point of UI rules is to know when to use them AND when to break them.
Any ideology taken to an extreme is bad in the long run.
Pre-iOS7 had a very nice balance of 3D shading, photorealism, and skeuomorphism, which TOGETHER all helped the UI S/N. iOS7 tells me the UI designers don't understand the first thing about UI S/N.
Grow up. Millions of happy iOS customers proved you wrong.
No. Many iOS users thought that iOS 7 was a step forward with respect to functionality and a step backward with respect to visual appearance. Skeumorphism may have been overdone but iOS 7 went too far in the opposite direction, too flat, gets rid of borders that made sense (buttons), icons that make no sense and look like a placeholder that never got replaced (game center), etc.
Its a strange day when people coming from the Linux world are doing a better job at UI design than Apple.
Its a strange day when people coming from the Linux world are doing a better job at UI design than Apple.
My god, you've got that one right.
Next up. Hell freezes over. Microsoft goes open source.
Faster! Faster! Faster would be better!
It's awful. Things that function as multi-state buttons now look like hyperlinks. Low-contrast shading "highlights" state changes. Other buttons, formerly intuitive and multi-state, now summon fly-up menus from the bottom of the screen (like the loop one/all button in Music app).
"WHY ARE YOU TRYING TO RUIN MY COMPANY?"
-- Steve Jobs, c. 2003
"Flyin' in just a sweet place,
Never been known to fail..."
Summary is an over simplification based reading T.F.Email from Apple. Nothing that Apple is doing at this time will prevent developers from targeting older devices than they previously have been able to target. I *think* the current oldest supportable iOS given their requirements is iOS 5, but I haven’t verified that with the latest Xcode build.
All apps published after the cut-off date must be built with the latest version of Xcode and must have imagery & design that will support iOS 7 devices’ look & feel. They must use iOS 7 as the Base SDK, but they are not required to use iOS 7 as the Minimum Deployment Target. The minimum target supported by latest Xcode is the one thing I’m uncertain of right now, but I’m pretty sure it’s iOS 5.something.
The two settings on your project (Base SDK and Min. Deployment Target (MDT)) control the newest and oldest features you have access to, respectively. An app with a newer Base SDK will still run on an older device (down to MDT). Any features added to an iOS release that’s newer that the MDT will be weak linked. The developer can check at runtime whether particular functionality is available. Unavailable classes will return nil when you try to access them (which you can ignore or check for depending on your needs), and newer methods will be unavailable on old devices (so check with respondsToSelector: or similar before calling). Additionally, when running on an older device, you keep the old device look & feel. You don’t suddenly start looking like iOS 7 on an older device.
As for what developers must do to comply with the new requirements:
1) Make sure all artwork, screen layouts, etc. are available in the higher resolution / size needed by the larger iPhone 5+ screens & Retina iPads.
2) If changing the MDT, update any code referencing methods/classes that were deprecated in between whatever the previous MDT was and the new one. Any methods/classes deprecated between the new MDT and the Base SDK version can stay unchanged,since in many cases, the newer method/classes wouldn’t be available at runtime on the older devices.
Apple has definitely cut off older devices in the past. It’s currently Very Difficult to target 3GS or earlier devices as the current Xcode doesn’t generate ARMv6 code any more. It’s still possible to make that work if you’re very dedicated by building an ARMv6 binary with an older Xcode, ARMv7(s) with the latest Xcode, and manually merging the binaries with the `lipo` command. Anecdotal evidence suggests Apple will still approve such binaries, though I’ve not personally tried to submit one.