By Mark Randall
WWDC 2019, Apple’s annual developer conference and platform for announcing OS updates, was full of news that both users and developers can be excited about. It was great to be in the crowd as Apple announced huge improvements to their platform and developer tools including iOS 13 with dark mode, SwiftUI and iPadOS. Here are a few takeaways that could affect your iOS apps, products and teams.
Get ready for iOS 13 and dark mode
In typical Apple fashion, the next major iOS release should drop in mid-September. As is the case every fall, you want to make sure your apps work as expected on the latest version of iOS because iOS 13 is expected to have a high rate of adoption. This year, supporting dark mode will also need to be considered. Dark mode is a system setting which applies a new color scheme to the user interface of the operating system and apps which support it. Dark mode is not an App Store requirement, but it is something your users will expect to be supported by your app. Supporting dark mode requires designers and developers work together to adopt iOS’s new color system. Brand guidelines may also need to be considered to ensure brand colors are appropriately presented in both light and dark color schemes.
Apple continues to invest in enterprise and B2B
iOS is already a great option for internal and B2B mobile software because of predictable procurement and the OS stability of first-party-only devices. This year brought notable improvements including custom apps distribution, iPadOS, improvements to accessibility and tools to support sharing code across platforms.
Custom app distribution will make it easier to distribute apps to your workforce. This new distribution option was introduced as the new default internal distribution channel. Custom apps may be distributed using Apple Business Manager, School Manager, or redemption codes via the public App Store.
iPadOS will be huge for enterprise mobility and education applications. iPads will now support allowing users to open multiple instances of an application side-by-side, as well as improved support for multiple applications open side-by-side. This makes the iPad a much more powerful tool for productivity and enterprise mobility. The iPad finally moves beyond being a giant iPhone, becoming a first class tablet experience.
Supporting products across multiple Apple platforms is about to get much easier. With the introduction of Project Catalyst, existing iOS apps can be compiled and run on macOS. SwiftUI was also created to support developing applications to run on ALL Apple platforms with a single codebase.
Apple is listening to developers and this is good for your business
Apple announced the future of its development tools with SwiftUI. With Swift — the programming language created and then open sourced by Apple — reaching adulthood with version 5.0, a new UI framework built on top of it was introduced.
SwiftUI is a declarative UI framework designed to allow developers and designs to create UI which feels natural on all Apple platforms, everything from iOS to watchOS. It’s designed to make developing app UI less complex. Rather than writing complex custom code to manage how UI should react to user interactions and system events, SwiftUI allows developers to declarivity express how state should be presented and the framework itself is responsible for managing the details of updating and managing the UI.
SwiftUI and Xcode will also support hot reloading. This allows developers to make updates to the code of a running application and see it reflected in real-time. This shorter feedback loop will allow developers and designers to work more quickly and collaboratively.
The promise of SwiftUI is that it will be easier than ever to focus on the exciting, custom features which solve your business needs, because the framework will manage basic features and functionality for you. This follows a larger software trend of higher levels of abstraction to avoid repetitive and common tasks, as well as a more specific trend in client-side development of building UI with highly declarative code.
Apple also introduced first-party frameworks to replace common open source third-party frameworks, such as Combine to replace reactive libraries used by an increasing number of apps. Also worth noting is Xcode’s support for Swift Package Manager (ending an inevitable standoff between an Apple supported first-party solution and existing various third-party solutions), and SF Symbols, a new library of icons designers can utilize to make apps look and feel more native within Apple’s platforms.
All of these updates add up to a more predictable and stable toolset for developers to create and maintain applications. Apple providing first-party support for modern development tools and practices allows your teams to confidently build on a foundation with a certain and bright future. This is increasingly important as mobile applications become increasingly complex and require long term maintenance considerations.
SwiftUI and many other new frameworks will only be supported on the latest, soon to be released, OS versions. Even with the high adoption rates Apple platforms typically have, this pushes out being able to fully embrace these updates until at least late 2020, the earliest that we can expect the percent of non-supporting OS version to drop into the single digits. In the meantime it will be very interesting to see how SwiftUI and the development community around it evolve.
Machine Learning (ML) — Apple announced huge updates to ML capabilities this year. Featuring over 10 sessions covering domain APIs, the ability to customize models on the device, and a new app to train models. Apple is making it easier than ever to incorporate ML into your apps. If you currently use or are considering using ML in your apps, be sure to review updates to domain APIs, Apple trained models with SDKs for easy integration, and improvements in training abilities, such as using transfer learning to specialize already trained models using the new Create ML app.
Siri — Siri also got a huge boost this year. It is now possible to create custom Siri shortcuts for your app which support conversational inputs. If you are currenting using Siri shortcuts or have been considering the ROI of creating one, updates to developer frameworks will be very interesting to you.
Augmented Reality (AR) — There were also big announcements in the AR space with ARKit 3, RealityKit, and Reality Composer being introduced. ARKit 3 was updated to support full-body motion capture and body occlusions. Apple continues to push what is possible and open the possibility of incorporating AR into your iOS apps.
(All images courtesy of Apple's Newsroom)
Published on 06.10.19