Now that WWDC 2017 has concluded, it's time to evaluate any apps you currently have in the App Store, as well as any soon to be released, to ensure that they're ready for the new version of iOS. It's not a very long list, but the changes are important.
- Prepare for the new App Store look and feel. Your app will get a new presentation style, and you're encouraged more than ever to use video to demonstrate the app. Also, reviews no longer reset with each submission to the App Store, so it's a good idea to decide on what interval you wish to reset those ratings averages. Related to the new store: you may need to remove any existing mechanisms prompting the user to rate the app. Starting now, only the built-in functionality is allowed for prompting the user. You can still use any techniques you prefer to decide when the stock technology should present the request, but be aware that the user will only receive that prompt at most three times per year, and may never see it due to choices that they've made.
- Apple has provided a new set of tools for determining where items should be placed on screen. Hopefully your app is already using AutoLayout, and is prepared for multiple device layouts using size classes. These have been around for a while, and should be considered the bare minimum for supporting modern devices. In addition, there's now a concept of the "safe area" on an iOS device. This is the area of the screen where critical user interactions should take place. This concept is common for development for televisions to account for overscan, but is new for iOS development. This may indicate that in future devices, interactive elements might not work if they're too close to the edge of the screen. Prepare now, and you can ensure that future devices won't hamper your users' experiences.
- In iOS 11, users can allow location services either in-app only or at any time. Some apps are designed to work only if they have access to the user's location at all times. These apps need to reconsider their location usage strategy and adapt to this new requirement.
- If your app uses a custom typeface, it is now much simpler to support dynamic type with those custom typefaces. This is often the first step in making your app accessible, and now you can easily set up your app to handle this combination of dynamic type and accessibility. If you had done this using some arbitrary custom code before, you can now handle it more completely and safely.
- Finally, if your app runs on the iPad, the time has never been more appropriate to adopt multitasking. With the new multitasking features and drag-and-drop support, it's more important than ever to support these techniques, so that your app remains relevant to advanced users of these devices.
Once you've completed these must-do tasks, there are a few other things that can help make your app more modern and relevant. Generally speaking, these are more technical, so you don't necessarily need to keep going from this point.
The first of these optional items would be replacing any icons in your app with vector art. You've been able to use PDF vector art to provide images for quite some time, and there are additional areas where these will be used (such as accessibility hints for toolbars). This should be a straightforward change for ongoing development.
The second optional item would be to simplify any of your custom JSON transformations using the new Swift Codable protocol. This functionality should be backward compatible back to iOS 6, and this can give you a simpler, lighter-weight application.
If you support a user login system on the web as well as your app, you should definitely prepare to share those logins using the new password support. There are very few steps needed to complete these logins, and it can allow the user to use more secure passwords.
You should consider updating any animations in your app that are frame-locked to 60Hz. Having animations locked to a particular refresh rate can cause less-than-ideal appearance on the most recent iPad pro, which has a 120Hz refresh rate. Future devices may have refresh rates other than 60Hz as well, so preparing for that future would be a wise move.
Hopefully you're inspired to get your app ready for the next version of iOS. If you get started now, this is a very light lift for most apps that have been well maintained. Your users are certain to be appreciative of your app if it's kept current with the latest developments.
Want to make sure your app is ready for iOS 11? Reach out and let’s talk about it.