iOS 14 and Xcode 12: From a developer’s perspective

Priyanca Gyawali
5 min readJul 22, 2020

Apple WWDC event this year took place as a digital keynote event that was brimful of announcements about iOS 14, iPadOS 14, watchOS 7, tvOS 14, macOS Big Sur and most notably, Apple Silicon. With this, Apple introduces new frameworks and tools for developers, including the Xcode 12.

With a wide range of updates from App clips to Xcode 12 to a new SwiftUI API for making widgets that work across iOS, iPadOS and macOS, Apple is allowing developers to build apps for both Apple Silicon and Intel systems.

Notable updates:

An Online App Store Lab: To support the Apple developer community further, Apple is launching App Store lab encouraging developers to share their feedback at the virtual lab and discussion forum to improve app Store experience for the entire developer community.

New App Store Review Processes: Ever wanted to challenge the App store guidance? Well, most of us did. The good news is developers will be able to appeal for app guideline violations and also have a mechanism to challenge the guideline itself. Moreover, for apps existing in the app store, resubmission of bug fixes will not be delayed over guideline violations and developers will be able to address the issue in their next submission.

Privacy practices: Developers now have the option to detail their app’s privacy practices directly in the App Store for users to review, including the types of data the app might collect, and whether that data is shared with third parties.

TestFlight now supports up to 100 team members (10k external) for fast build distribution. Add up to 100 members of your team quickly test beta builds. Each member can test on up to 30 devices. Invite up to 10,000 external testers using their email address or by enabling and sharing a public link.

XCODE 12: Among other things, Apple rolled out a beta version of Xcode 12 that can create universal applications. It is very important to be clear about what universal application they mean by that. Universal application here refers to support for both Intel- and ARM-based Macs. Now question may arise, do we get to download the Xcode 12 without the macOS Big Sur? Yes. You can still be in macOS Catalina and download the Xcode 12.

Some capabilities of Xcode 12 includes easy switch between files using tab, focused interface for code completion, tools that are included to create StoreKit files to offer test scenarios for better workability. Overall, whatever developers have been doing on Xcode 11, they should still be able to do in Xcode 12. There are some UI and UX changes to match macOS Big Sur and improve user interactions with Xcode.

Machine learning: Apple has mentioned the introduction of new APIs for natural vision and NLP with additional tools in Core ML for model deployment and encryption, new templates and training capabilities in Create ML.

PencilKit: The new OS is here to turn your handwriting into typed text. Through a new feature called Scribble, it will become easy to create apps with text entry fields. It is mentioned that developers will also have access to stroke data using PencilKit, all while seamlessly handling both Apple Pencil input and system touch gestures.

Moreover, AirPods Motion API gives developers access to real time movement data.

SwiftUI capabilities: Introducing new life cycle APIs, Apple allows developers to write an entire app in SwiftUI and share that code across all Apple platforms. SwiftUI API will allow developers to use the same code to build highly talked widgets for iOS, iPadOS, and macOS. Updates in views, modifiers, new property wrappers and many more. Here, we will see few demo project on Widgets, appStoreOverlay, gridLayout and exporting of files.

· Widgets: WidgetKit brings the best way to bring your app’s most useful information directly to the home screen. You can start by creating a widget extension and connecting it to your ContentView. Also, create a struct to define your property.

·GridView: In iOS 14 swiftUI gains a power to make grids, both horizontally and vertically. It’s better than lazy which means only when your content scrolls onto view, it gets made, not before. It results in maximum speed and efficiency. This will work by adapting to the available layout and creating rows and columns on that basis.

· Exporting files: SwiftUI has a new export file action that lets us save file from our app to anywhere else user can write to. Like iCloud, or folders in their files. Here, I have already saved a pdf file named test in my folders.

· AppStoreOverlay(): In iOS 14. SwiftUI gains a new app store overlay modifier, that can recommend other apps on the App Store. It is also recommended for AppClips. This modifier needs some state to watch that will determine whether the App Store overlay is active or not, along with an SKOverlay.AppConfiguration that determines which app to recommend.

ARKit 4 and RealityKit 2: Introducing new Depth API designed to work with LiDAR sensor in iPad Pro enables a whole new range of apps such as design, landscaping and manufacturing. Moreover, Apple Maps integration for real world location anchoring and Face Tracking without TrueDepth camera are also being introduced with new updates. We will see one exciting update from Apple in RealityKit which allows developers to add videos in the screen. Here, I have already added a .mov video in a folder that we need to display.

It’s a wrap 🎁

If this article has helped you or motivated you, and you want me to continue writing similar articles, feel free to let me know. Happy Coding 🎉

--

--