Apple has recently revealed how the next version of its iOS mobile operating system will look and the user interface changes are radical to say the least. The new operating system, which can be downloaded and installed on an iPhone by registered Apple developers, has been applauded by some and criticized by others. But regardless of how you feel about it one thing is sure, this will be how the next version of iOS looks.
Support for the new UI isn’t automatic. Apps built for iOS 6 won’t magically look like iOS 7 apps when run on the new version. This means that iOS developers have some work to do in preparing their apps before the official release.
First of all iOS 7 apps need to be built using Xcode 5. Apple are offering a pre-release version of Xcode 5 to help developers prepare for iOS 7. However, one thing to note is that the Xcode 5 Developer Preview cannot be used to submit apps to the iOS App Store. To submit apps until the official release you need to continue to use Xcode 4.6.2.
Apple also want developers to consider dropping support for older versions of iOS altogether. It is assumed that almost all iOS 6 users using an iPhone 4 (or later), and iPad 2 (or later) or an iPad mini will upgrade relatively quickly to iOS 7 and they will likely expect their favorite apps to follow suit.
iOS 7 changes the UI in several key ways and introduces new elements such as borderless buttons, translucent bars, and full-screen layout for view controllers. These changes will have an impact on the appearance of your app. Also the new Dynamic Type font technology will change how text can be displayed since it can automatically adjust the font’s weight, letter spacing, and line height.
An important difference from iOS 6 is that now the status bar is transparent, while navigation bars and tab bars are translucent. This means that in iOS 7 it is important to ensure that the apps content fills the area behind the bars.
Since the status bar is now transparent Apple suggests that now it isn’t necessary to hide it. The disadvantage of a hidden status bar is that users must leave your app to read the time or check network connectivity.
Of course some apps (predominantly games) don’t use any elements of Apple’s standard UIKit and therefore transiting to iOS 7 just involves rebuilding the app binary under Xcode 5. However for full support the app needs to be able to handle the new system wide gestures correctly.
If you are writing a new game it is worth looking at iOS 7’s new Sprite Kit framework. This iOS level library provides hardware-accelerated sprites that can be used for 2D and 2.5D games.
Included in the Sprite Kit are a graphics rendering and animation system, sound playback support, and a physics simulation engine! It probably isn’t worth swapping out existing code for these iOS provided functions in your old gaming apps. However for new games the Sprite Kit frees you from writing these parts yourself.
iOS 7 also introduces some new multitasking features which your app could benefit from using.
Apps that frequently require new content from the Internet can tell iOS to wake them up so they can fetch the new data. Also apps that use push notifications to tell users about new content can actually use the notifications to start the content download in the background.
Mobile apps that use the remote-notification background mode can now be woken up just before a new notification is to be presented to the user. Because they are woken before the notification delivery then the app can use this time to download the new content and have it ready for the user.
For iOS 7 Apple also redesigned all of the icons for the built-in apps. The redrawn icons have a new lighter, colorful styling and are generally flatter. Existing iOS apps need to redesign their icons accordingly otherwise there could be the danger of the app looking odd and out of place on the home screen. It is also worth noting that in iOS 7, app icons are 120 x 120 pixels.
Apple recommends that icon designers shouldn’t use transparency but should make icons opaque. Transparency could be used to depict glass or plastic, but Apple feel that getting transparency right can be tricky.
Another small graphics job that needs to be done to support iOS 7 is to update your apps launch image to include the status bar area if it doesn’t already do so. The launch image is displayed when your app starts up and gives the impression that your app is fast and responsive.
Transitioning to iOS 7 shouldn’t be a major task as the changes are mainly about aesthetics, but it is also worth checking that your app doesn’t use any deprecated API calls. For more developer information on iOS 7 Apple have a dedicated mini-site at https://developer.apple.com/ios7/ where you can find some key documents including the “iOS 7 UI Transition Guide” and the “iOS Human Interface Guidelines.”
Gary Sims is a mobile app developer, technical writer and author of Mobile Advertising Comparison.
Post a Comment