Apple recently released their newest operating system, iOS 11. With this release came many great features such as a Machine Learning SDK, an Augmented Reality SDK, Face ID, along with a handful of improvements to existing libraries. Aside from new iOS features, Apple also released Swift 4 which contained various updates to the language’s grammar and syntax that I won’t bore you with. If you are interested, you can check out the changes here.

As a mobile developer, I can tell you that operating system and language updates are very annoying. Even though Apple usually bakes in some “Auto update” code functionality into Xcode, it rarely works. You are generally stuck updating broken code, reworking deprecated language features, recompiling frameworks that no longer work with the new OS and language version, regression testing your entire app after making these changes, and the list goes on and on.

There’s a better way though – these are all of the things that Dropsource does for you. We stay on top of and integrate into Dropsource the latest and greatest mobile trends and best practices so you don’t have to. All you have to do is go into the Dropsource editor for your app project and run a fresh build. At that moment, behind the scenes, we’ll instantly update your app’s source code so it’s compatible with iOS 11, Swift 4 and Xcode 9.

It’s important to note that you will need to update your Xcode to the most recent version (v9) if you plan to work with Dropsource generated source code locally.

New OS, New Issues

Upgrading to iOS 11 came with a unique set of challenges. Specifically around how to handle apps running on the new iPhone X. The new iPhone X is different from any other Apple device on the market in that it no longer has a home button and the screen goes edge to edge on the device. As a result of this, how layouts are built and rendered changes slightly in different scenarios.

Apple introduced the concept of the “Safe Area” which exists at the top (near the speaker) and at the bottom where the home indicator is. Mobile app UIs need to be constructed to not interfere with these areas in order to make sure users can interact with your app’s entire interface. In the coming weeks before the launch of the new iPhone X, we will be releasing updates to all app projects that will optimize your apps to run on the iPhone X.

In order to ensure your app is running smoothly with the transition to iOS 11, here is a step by step guide:

  1. Log in to Dropsource, open your app project, and click Test to run a fresh build for your app. This will rewrite your source code files to be instantly compatible with iOS 11 and Swift 4.
  2. Test your app in the iPhone X simulator in Dropsource. Make sure your layouts do not interfere with the “Safe Areas” of the iPhone X.
  3. Test all the functionality in your app to make sure everything works as anticipated.
  4. Download your new source code, and voila – you’re up to date.
    (If you plan to work with the code, you’ll need to be using a Premium Project and please make sure to upgrade your Xcode installation to Version 9).

Although our team made sure all the code generated is compatible and optimized for new operating systems, like iOS 11, there is always the possibility for fringe cases in some apps to behave differently.  As always, if something in your app does not work as expected, please reach out to our team and we will work to get it resolved as soon as possible. Stay tuned for future releases that include even more updated features for iOS 11 and iPhone X, including Face ID.