NativeScript 6 & 7, Xcode 11 & 12, and IOS 14 Compatibility


Due to the recent release of NS (NativeScript) 7, then Apple's release of IOS 14 and Xcode 12; there has been a lot of confusion about what works with what.

It's helpful to understand some key aspects of NativeScript in general, how they relate to what:

  • CLI = The CLI is the tns, ns or nativescript command you run to create, build, run, and debug your app.
  • CORE = A JavaScript library. @nativescript/core (NS 7) or tns-core-modules (NS 6) - This provides a single JavaScript api to fundamental platform features for the supported runtimes, which right now are iOS and Android.
  • RUNTIME = Platform support wrapped up in a consumable npm package for use with NativeScript apps. @nativescript/ios (NS 7) or tns-ios (NS 6)

These are all fundamental aspects to NativeScript which allows you to build a working application. In most cases, when using NS 6 CORE it requires you to use the NS 6 RUNTIME. You should normally keep CORE and RUNTIMES with the same major version.

TL;DR

  • Using Xcode 12 - You need to use NS 7.0.10+ CLI
  • Using Xcode 11 - You need to use NS 6.8.x CLI
  • You can use NS 7 CLI to also build NS 6 Core/Runtime applications.
  • USe the NS iOS 6.5.2 runtime if using NativeScript 6 & Xcode 11, use 6.5.3 (or later) for Xcode 12.

Explanation

When Apple released Xcode 12, they broke multiple build related things, including things like simulator support. So if you are experiencing an issue running against a simulator you are probably using the wrong NS CLI for the version of Xcode you are using.

Most of the TSC members have already upgraded to Xcode 12 and are using it daily to build both NS 6 & NS 7 applications. If you are afraid to update; rest assured at least for NativeScript usage, Xcode 12.0.1 is solid.


Compatibility Chart

Xcode 11Xcode 12
NS 6 CLI Works 6.8.xNo Support
NS 7 CLINo Support Works 7.0.10+



NativeScript App Chart

NS 6 CORE & RUNTIMENS 7 CORE & RUNTIME
NS 6 CLIWorks tns-core-modules@6.5.20No Support
Works tns-ios@6.5.2
NS 7 CLIWorks tns-core-modules@6.5.20Works @nativescript/core@latest
Works tns-ios@6.5.3Works @nativescript/ios@latest



NativeScript IOS 14 Compatibility

iOS 14 Supported Runtime
NS 6 CORESupported tns-ios@6.5.2
NS 7 CORESupported @nativescript/ios@latest


Video

Or if you prefer a video version, you can watch here.

Comments


Comments are disabled in preview mode.
NativeScript is licensed under the Apache 2.0 license
© 2020 All Rights Reserved.