Apple introduced a lot of new items at this week's event. We knew there would likely be an announcement of an iPhone, but not the announcement of two different models of iPhone. Other surprises include the introduction of cellular models of Apple Watch and a 4K Apple TV. Let's examine these announcements from a developer's perspective.
SEE: Hiring kit: iOS developer (Tech Pro Research)
iPhone 8 and iPhone X
The iPhone 8 and iPhone X feature the A11 Bionic processor, which increases the throughput and supercharges such features as Metal 2 for graphics rendering, ARKit for augmented reality, and Core ML for machine learning computations. Oh, and, the A11 chip is extremely fast in initial benchmark testing.
In addition, the iPhone X features what Apple has dubbed the Super Retina Screen. This screen uses the same 3x graphics that we've been generating for Plus devices since the introduction of the iPhone 6 Plus; however, Apple recommends switching to vector-based assets, which have gained a lot more usefulness in iOS 11.
Linking against the iOS 11 SDK is all you need to do in order to get your apps running inside of the iPhone X simulator. Be sure your apps follow the new iPhone X HIG (Human Interface Guidelines); for instance, your apps should obey the safe areas for the top and bottom of the screen (remember Apple making a big deal about these back at WWDC '17?).
If your apps reference Touch ID, you will want to remove that on the iPhone X and replace the wording with Face ID if you support this feature. You can query which feature is available using the LABiometryType enum in the LocalAuthentication framework (it's the same framework you use to implement Touch ID / Face ID authentication).
Apple has specific instructions regarding the screen edges and the sensor housing at the top of the screen (called "the notch" by many people):
"Don't mask or call special attention to key display features. Don't attempt to hide the device's rounded corners, sensor housing, or indicator for accessing the Home screen by placing black bars at the top and bottom of the screen. Don't use visual adornments like brackets, bezels, shapes, or instructional text to call special attention to these areas either."
The iPhone 8 is available for pre-order on September 15, 2017, with iPhone 8 shipping on September 22, 2017. The iPhone X will be available for pre-order on October 27, 2017 and will ship on November 3, 2017. Visit Apple's site for specifics about iPhone pricing and availability.
Apple TV 4K
The Apple TV is getting a lot of new goodies that developers and organizations that have video apps will want to take full advantage of.
One new feature is the ability to display 4K and 4K HDR content. Besides supplying new video files in 4K, you'll want to update the images used in the apps to ensure they don't look blurry. You can do this by adding Retina graphics to your app bundle (@2x images), just like we've become accustomed to for years with iOS. This applies to your launch images, top shelf images, and app icons.
You'll also be able to use the new A10X chip to make even more stellar graphics on the screen. This is the same chip used in the iPad Pro, and it's amazing to see this in a set top box.
The updated Siri remote may look the same, but it include new motion features; specifically, you can use GCMotion to access rotation and attitude information.
For more information, watch the developer video on how to update your apps for Apple TV 4K.
Apple Watch Series 3
The Apple Watch receives a cellular and barometric altimeter sensor with this latest update—so, how does this affect developers?
For starters, you'll need to ensure that watchOS apps can be run without being paired to an iPhone. You'll use URLSession, which can seamlessly transition between a connected iPhone, the cellular network when untethered, and Wi-Fi networks nearby. In addition, be sure that you're limiting the use of WCSession (the data manager that coordinates file and live data transfers between iPhone and Apple Watch), as the user can be completely untethered and still use apps now. Instead, rely on CloudKit and other data storage methods that became available with watchOS 4.
The inclusion of a barometric altimeter means that developers can write apps that take advantage of knowing and displaying relative altitude changes—this paves the way for interesting apps that involve swimming, biking, and other outdoor or travel activities.
For more tips, check out the developer video on Apple Watch Series 3.
watchOS 4 will be released publicly alongside iOS 11 on Tuesday, September 19, 2017.
Xcode 9 gold master version
Along with the updates, we got the final gold master (GM) version of Xcode 9. This is the final version of the Xcode 9 beta that developers have been using since WWDC '17, although this version can be used to sign and upload iOS 11 apps to the App Store. In addition, Xcode 9 GM adds simulators for iPhone X, allowing you to test your apps for the App Store ahead of the device's release date.
Download the Xcode 9 GM on the Apple Developer Downloads website.
iOS 11 will be available publicly starting Tuesday, September 19, 2017, and because of that, Apple now allows developers to submit their iOS 11 apps for approval and release on that date.
macOS High Sierra
Although macOS High Sierra was not mentioned during the Apple Event, the company did reference it later in a press release. The next version of macOS takes a step back from big, flashy features to integrate refinements and system stability features to make the OS run better on Apple's latest hardware and even some older hardware.
New features include a new file system dubbed APFS (Apple File System) that dramatically optimizes storage for SSDs. The main features of APFS are security with built-in encryption mechanisms, significantly reduces the time needed for copying and duplicating files, crash protection, and 64-bit architecture. HFS+ and older file systems will automatically be upgraded and replaced with APFS upon installation of macOS High Sierra.
High Sierra is compatible with the following systems.
The following 2009 and later Macs:
- iMac (Late 2009)
- MacBook (Late 2009)
The following 2010 and later Macs:
- MacBook Air (Late 2010)
- MacBook Pro (Mid 2010)
- Mac mini (Mid 2010)
- Mac Pro (Mid 2010)
Any system that is capable of running macOS Sierra is compatible with macOS High Sierra.
Download the macOS High Sierra GM Candidate (it's not the final version, but it's close). macOS High Sierra is due out on Monday, September 25, 2017 and will be available for free from the Mac App Store.
- Job description: iOS developer (Tech Pro Research)
- The Complete iOS Developer Course (TechRepublic Academy)
- Warning: iOS 11 won't work with these iPhones and iPads (TechRepublic)
- How to get your company to pay for an iPhone X (TechRepublic)
- Flagship smartphones: Specs, benchmarks and prices for iPhone, Samsung, Huawei and more (ZDNet)
Cory Bohon is an indie developer, creating both iOS and OS X applications at Cocoa App (his own company), MartianCraft, and for various other clients. As a part of full disclosure, he does not write about any software that he has created or has helped to create through these outlets.
Cory Bohon is an indie developer specializing in iOS and OS X development. He runs a software company called Cocoa App and is also a developer at MartianCraft. He was introduced to technology at an early age and has been writing about his favorite technology part-time since 2007. He runs a development blog named ObjDev when he isn’t writing about consumer tech.