Top Ten Questions About NativeScript from Ng-Conf

We had a blast talking to developers at the Telerik booth at ng-conf, the US’s largest AngularJS conference, where we were happy to discuss any and all questions about NativeScript. We also participated in several podcasting sessions, video recorded interviews, gave a session talk and a two-hour workshop, did Experts Panels and AMA’s, and took part in the many social activities hosted by the awesome ng-conf organizers. Throughout the nearly week-long event, we tried to give our best answers to sometimes complicated technical questions. Here are the top ten, with detailed replies!

10. How secure is it?

NativeScript apps, like all apps built with JavaScript, are as secure as you decide to make them. You might want to compress and/or obfuscate your JS code if securing your app is important to you. There are a couple of tools to help do this, including jsscrambler. There are also some community projects built to help with securing your app, and stay tuned for an officially supported app protection plugin coming in the following weeks that will provide full code encryption.

9. Do I have to write a lot of native code to get anything to work?

One of the great things about this technology is that NativeScript offers is abstractions to support modules to help you avoid writing native Objective-C or Java code. You can use, for example, a simple <Switch></Switch> bit of XML in your presentation tier and the NativeScript runtime will do the work of marshaling native code to build your screens.

In order to support Swift Cocoapods, you must have a build.xconfig file and set EMBEDDED_CONTENT_CONTAINS_SWIFT to true. Check this plugin for sample usage: nativescript-dialog

5. Is it kind of like React Native?

NativeScript and React Native, as well as Xamarin and Titanium, are all trying to solve the same problem: the unfulfilled promise of hybrid mobile development. While hybrid mobile development has enabled web developers to use their skills to build cross-platform mobile apps, the look, feel, and performance of this type of an app has been lacking. Building apps that run in a WebView using hybrid mobile strategies got us halfway there, in that we have tooling such as Apache Cordova to build cross-platform using a single codebase. These newer technologies, however, are attacking the problem in a different way, avoiding using the WebView in favor of building truly mobile apps. To learn more about these differences, check out this article: What are the key difference between ReactNative and NativeScript?

4. Did I actually see CSS keyframe-style animations translated to Native Animations in that talk? Is that sorcery?

In my opinion, the dark side of NativeScript is also its light side…it is a rapidly maturing product that is evolving in realtime. This means you need to keep your codebase up to date to ensure that you are leveraging all the new features that come with each release…sort of like any software product.

2. Will it produce something I can send to the app stores?

Yes, when you build your app for release, an .apk is produced for Android stores and an .ipa file is produced for Apple. You can upload your app to iTunes Connect and to the Google Play stores quickly once your app is properly code signed.

And the number one question, asked again and again in all different formats by all different audiences is…

1. What’s the difference between NativeScript and a Cordova-based app such as Ionic?

This answer can almost be summed up in a hashtag: #NoWebView. NativeScript is a different technology - it is a runtime, not a web technology. Your app will not run like a mini website in a WebView; it will be more performant. Don’t believe us? Take our sample app for a spin! And stay tuned on this blog for a more detailed explanation of the differences.

Enterprise

Stay connected with NativeScript

I agree to receive email communications from Progress Software or its Partners, containing information about Progress Software’s products. Consent may be withdrawn at any time.

We see that you have already chosen to receive marketing materials from us. If you wish to change this at any time you may do so by clicking here.

Thank you for your continued interest in Progress. Based on either your previous activity on our websites or our ongoing relationship, we will keep you updated on our products, solutions, services, company news and events. If you decide that you want to be removed from our mailing lists at any time, you can change your contact preferences by clicking here.