The iPad is back. Now that iOS 11 has made landfall, Apple’s largest mobile devices are seeing a new round of dedicated software features. Should tech pros take another look at the iPad as a development platform?
With iOS 11, the iPad became a more robust computer-replacement option for many users; for example, better support for multi-touch allows users to accomplish tasks such as selecting an item, then using other fingers to drag-and-drop new items to a collection.
The dock can be surfaced in apps, allowing secondary apps to be opened in split-screen or a new windowed mode. Again, the aim is productivity; users could be editing photos in Photos, slide Messages open, and quickly drag-and-drop images to send to friends and family. Messages can be dismissed with a simple flick gesture.
Apple also has a slick new Files app that corrals files into one place. It supports iCloud Drive (naturally), but also lets users see what’s in their Google Drive, Box or Dropbox accounts. It’s doing for file management what Apple TV’s TV app does for binge-watching.
Is This More Work for Developers?
Yes – but not much. As you may have guessed, much of this new feature set works best when you use Apple’s tooling. A good example of this is
UIDocument, which “frees you to focus on your app’s specific needs” via “automatic file coordination that improve reliability, asynchronous reading and writing for a smoother user experience, and robust change tracking and conflict resolutions for more predictable results.”
UIDocument also does is allow files to be viewed and edited across apps without forcing redundant files. Adding
UIDocumentPickerViewController lets users accomplish this. If a PDF needed to be marked up via a third-party app, a user could do that without having to copy, edit, save and replace the file in iCloud, Google Drive or any other available cloud storage provider available to the new Files app.
This is sort of an extension of APFS, Apple’s new file system. The TL;DR version is that APFS keeps files in one spot, but lets various computers and apps work on them. It’s also the backbone to collaborative editing, a feature Apple has been slowly adding across its own apps.
Drag-and-drop is also critical. Developers who fail to support this feature will have apps that simply feel dated on the iPad. It takes a bit of work. Developers will need to add several protocols, like
UIDropInteractionDelegate, and decide whether or not they want specific animations for the experience. A developer can choose custom animations for times users collect, drag and/or drop items to or from their app. Boilerplate animations take over if nothing is customized.
Multitasking is easily the biggest feature for “regular” iPad users. Luckily, Apple made Split View, the framework that divides or windows the screen for multiple app use, easy for developers to support. Since Xcode 7, iPad builds have Split View enabled by default. Developers just need to add a dedicated launch screen icon for Split View and choose which orientations they want to support.
What About AR?
When we talk about augmented reality (AR), the focus tends to be on the iPhone. This doesn’t need to be the case. The iPad cameras are now as good as an iPhone’s, and they share the same great processors. The larger screen may prove a standout feature for AR.
We’ve detailed what developers need to do to support AR in the past, and we suggest you give those articles a read-through. Familiarizing yourself with SceneKit is the first hurdle. ARKit, Apple’s framework for augmented reality, is also critical. Luckily it’s simple to implement, and APIs do a lot of the heavy lifting for you.
Where productivity is the iPad’s new focus, gaming is still critical. Many AR games will simply be better on the iPad. Developers with games for iPad would be remiss to overlook augmented reality.
Risk Versus Reward
Supporting new iPad features won’t guarantee you success, but will ensure that your app fits the new paradigm that is the iPad’s flavor of iOS. The underlying architecture is the same as the iPhone, but tweaks make the iPad a worthy consideration again.
Between multitasking, productivity, and augmented reality, it’s getting hard to make an argument against the iPad as a development platform. For developers, the line between desktop and mobile is getting blurry. Apps once thought too powerful for mobile are actually having a moment. The most recent example is Kaleidoscope, a desktop “diffing” app most thought was just too intensive for a mobile device. It’s about as ‘pro’ as it gets, and works flawlessly on iPad.
If you’ve simply targeted an iPhone app for iPad in the past, without much modification, there’s no shame in that. But in 2017, that simply won’t cut it. Apple has rededicated efforts to make the iPad a standout piece of hardware in its lineup, and users are strongly considering it as a computer replacement. It’s never been a better time to make sure your app works properly for iPad.