[Editor’s Note: We’re currently working on our 2015 Guide to Mobile Development and we would love to hear from you. Click here to fill out our Mobile Development Survey and you could win an iPad Air, Galaxy Note, or Microsoft Surface.]
Written by Valio Stoychev
It is only two months since we released the first public version of NativeScript, but we’ve received tons of positive feedback already on the work we have done so far. The NativeScript project already has 3000 stars on GitHub, more than 1500 followers on twitter (@NativeScript) and ourpublic NativeScript forum is quite popular these days. This helps us a lot to validate that we are on the right track and we are working hard to continue to meet the high expectations. I hope that with each release you will feel more and more confident that NativeScript is the best choice for cross-platform mobile app development.
NEW OS SUPPORT
With the release today we are shipping some fundamental features that I’m sure every mobile developer will appreciate. As a reminder, NativeScript offers 0-day support for new OSs, meaning that it supports the freshly released iOS8.3 and even the not yet released beta version of iOS8.4! It goes without saying we also support the Android’s latest Lollipop 5.0 release.
To get started with the new bits please read our getting started with NativeScript article. If you have an app that uses an older version of the framework, please read our guide covering how to update to NativeScript 1.0.
What’s New in 1.0
Here is the quick look at what we are shipping today:
- Resolution-specific views
- DP-specific images
New UI controls
AngularJS 2 and NativeScript POC app
- Significant improvement in app load time on Android devices
- An improved debugging experience
During the last few months we implemented several impressive samples which you can experience on your phone and the best thing is that you can browse their source code because they are open source on GitHub.
TELERIKNEXT CONFERENCE APP
If you already installed the app and you are blown away by its performance and UX, you’ll probably want to browse the source code of the app and see how it is done. Look no further – the source code is available on GitHub athttps://github.com/NativeScript/sample-TelerikNEXT.
The next application is called Friends and it is shows what you can do by integrating NativeScript with the Telerik Platform. The application is thoroughly documented in an article on the Telerik Platform, but here is the short list of the features that are showcased in the Friends sample app:
- Cloud data access (Telerik Backend Services)
- Working with files (Telerik Backend Services)
- User registration and authentication (Telerik Backend Services)
- Responsive images (Telerik Backend Services)
- Basic app analytics (Telerik Analytics)
- Tracking custom events (Telerik Analytics)
You can browse its source code here athttps://github.com/NativeScript/sample-Friends
I hope these two new examples will give you enough insights of what is possible now with NativeScript. We plan to enhance these samples and add several new ones with the next release of NativeScript which is scheduled for mid-June.
Why are we implementing this?
This is my favorite feature from this release – let me explain why.
А mobile app runs on many different devices. They come in many different form factors – wearables, phones, phablets, tablets and big touch screen TVs. Frequently we need to display only the most important information on small screens and much richer content on the devices with bigger screens. While we support a very rich arsenal of adaptive layouts, in many cases it is just better to define a separate view for a specific resolution.
If this sounds interesting, you would definitely find it worth reading the deep-dive blog post by @KirilStanoev dedicated entirely on the topic:Introduction to resolution specific Views for your native mobile apps.
Why are we implementing this?
As explained in the previous section, different devices have different form factors and different DP. This means that you can’t use the same image on all form factors because it will be look small on devices with higher DPI ratio and will look big on devices with smaller DPI ratio. There is a very good explanation of the problem as part of the Android documentation.
ANGULARJS 2.0 – INITIAL INTEGRATION STEPS
One of the goals we have with NativeScript is to make it extremely easy for a web developer to get started writing NativeScript apps. One way to achieve this is to enable your favorite JS libraries in NativeScript.
AngularJS by Google is arguably the most popular open source framework for web developers. Over the last year, a lot of work has been done towards making this library ready for use in for mobile applications. You can read more about AngularJS 2.0 here.
Over the last few months, we worked closely with the AngularJS team to help enable it to support non-DOM environments. This is a topic we will explore a lot more in the next NativeScript release. Here is a screencast video of what we are able to do now. Read more on this blog post: Angular 2.0 Running in a Native app using Nativescript.
ENHANCED DEBUGGING SUPPORT
The new features include:
- Debugging on emulators by providing the
tns debug ios;
tns debug ios;
- Freeze the application on crash when a debugger is attached so that the debugger can be used to examine the errors;
- Support for
--print-app-outputthat logs all console output of the app in the terminal (this includes the console.log along with any native traces such as NSLog-s).
What’s coming next
We believe that now is a good time to start building applications with NativeScript, but we are also excited to share what is coming with our next release, expected in June.
The focus of our next release is further improving the developer experience and to enable even more app scenarios based on our flexible architecture. Here are the links to the issue details that we are working on:
- Support for 3rd-party static libraries in iOS
- Support for NativeScript plugins
- Implement cross-platform push notifications module
- Support for LiveSync inside CLI
- Optimizations in Android Build time
- Add support for iOS extensions and enable AppleWatch support
- Enable error reporting inside applications
I hope this gives you enough reasons to start building an app with NativeScript. We’d love to hear your feedback. Keep in touch with us on twitter via @NativeScript or visit our forum and talk with us.
We are hosting an online encore of TelerikNEXT keynote where you can see NativeScript in action. Come learn about Telerik’s future vision for it, see demos and new features. We’ll also host a live Q&A session with a full panel of Telerik experts to answer your question. Register now for May 13th (11:00 AM ET) online keynote