Apple has introduced an exciting new SDK in iOS 7 to arm developers with the tools to support new features and capabilities.
Apple recently announced an "even simpler, more useful, and more enjoyable" version of their trail-blazing operating system for the flagship suite of mobile devices - iPhone, iPad, and iPod Touch. "Blazing a trail" is a phrase usually reserved for individuals charting new territories and leading efforts to embrace the unknown. Apple has enjoyed a rich history and reputation as a leader of innovative hardware and software. The anticipation and hype surrounding each and every Apple announcement is fueled by this rich history.
Several weeks before the WWDC, rumors began circulate as to what Apple would introduce. While in most cases the rumors were a blend of partial truths and pure speculation, a few of the pre-conference rumors were born from users simply wishing for certain enhancements along with a few new features. Some of the features on our collective wish lists are already available on other devices and envied by the Apple faithful.
With Apple's mobile devices no longer the only option for consumers, it has become much more difficult to impress end-users with a feature or functionality not already available on a competitor's suite of products. Lackluster surrounding the introduction of iOS 7 at the annual World Wide Developers Conference (WWDC) on June 10, 2013 may be a sign of an impending paradigm shift. Instead of Apple exceeding the expectations of developers and the end-user community, it seems that expectations may barely have been met - if at all. Perhaps Apple has raised the bar so high, it has become difficult for them to one-up their own innovations. What does this mean for developers? Regardless how much the technology needle has moved, we need to continue developing iOS apps that leverage all of the great features of Apple's mobile devices. Moreover, we need to embrace change and charge forward.
While gaining momentum is very important, keeping momentum is even more important. Keeping momentum, however, requires a constant ear to the ground - and with an open mind, listen and learn from the user community. Apple thrives on feedback from developers and end-users alike. Apple has introduced an exciting new SDK in iOS 7 to arm developers with the tools to support new features and capabilities. A few of the frameworks new to iOS 7 include (in no particular order):
- Peer-to-peer connectivity - using the new Multipeer Connectivity framework developers can enable iOS apps to share documents, photos and other files with other peer-to-peer capable devices.
- Hardware-accelerated animation - using the new Sprite Kit framework, developers can add complex animations to their game apps.
- Game controller awareness & connectivity - using the new Game Controller framework developers will be able to detect and configure game controller hardware connected physically or via Bluetooth.
Many of the existing frameworks have been updated to include significant enhancements. The UIKit framework boasts the most changes. Considering the UIKit framework contains the classes responsible for the overall look and feel, and the iOS 7 interface has taken on an entirely new design, it makes sense that this framework would have undergone the majority of change. A few other highlights of the changes made to the existing iOS frameworks include:
- Store Kit framework - includes the ability to sync passwords between the iOS device and iCloud.
- Pass Kit framework - supports expiration dates, internal meta data, and exciting new support for enabling/disabling passes on-the-fly.
- MessageUI framework - supports attaching files to messages.
The entire list of iOS 7 changes to the API can be found on the Apple Developer's website.
The changes between iOS 6 and iOS 7 are significant. In fact, what would normally be an exercise of refactoring and recompiling to ensure compatibility will now require much more thought and dilligence. There are hundreds of deprecated methods that if used in your app will need to be replaced. Additionally, the interface is so drastically different, it is easy to spot apps that have not undergone the cosmetic changes to take on the iOS 7-ish appearance. Apps designed for iOS 6 devices look out of place among the lighter, sharper icons and glyphs, and screens on an iOS 7 device.Apple's published list of enhancements and new features include a contentious new interface, AirDrop, multitasking, new camera features, and updated mapping features to name a few. The ability to quickly access a control center from the lock screen is long overdue (Figure A). And while the majority of emphasis will be on the drastic cosmetic changes to the user interface (Figure B), there are plenty of significant changes to make our apps better.
Where to go from here
Developers should download and install the beta version as soon as possible. Follow this link to the page on Apple's Developer site where the latest release of Xcode and iOS 7 can be downloaded. There are clearly enough new features and updates to the frameworks to keep developers busy preparing their apps for the highly-anticipated release of iOS 7 in the Fall of 2013.
The excitement will grow as the user community has an opportunity to touch and feel the new interface. Apple and its following of iOS developers may have an up-hill battle in convincing users that change is good. However, and more important, there are enough features and enhancements to show differientiation between the iOS devices and the closest competitors.