Game on! With Nativescript

Slides:



Advertisements
Similar presentations
Cross Platform UI testing using Sikuli
Advertisements

Mobile App Development Using: Presented by Tyler Richey Images from
Alpha Anywhere Product Roadmap and Overview
Building Mobile Apps in the Cloud – Comparing Approaches.
Who are these guys? Bruce Pulley Senior Mobile Applications Developer Andrew Rumbley Senior.
Amanda Silver Director of Program Management Visual Studio Tools for Client Applications Cross-Platform Development using Visual Studio.
Development of mobile applications using PhoneGap and HTML 5
UNIT4 BUSINESS ANALYTICS. page WHAT IS THE PRODUCT? 2 A business intelligence tool kit, specializing in Coporate Performance Management An application.
ITM352 Javascript and Dynamic Web Pages: Client Side Processing.
Microsoft Evangelist Presentation September 13, 2012.
The PhoneGap History Doncho Minkov Telerik Academy academy.telerik.com Technical Trainer
Introducing Xamarin 2.0 Introducing Xamarin 2.0 Michael Hutchinson
UFCFX5-15-3Mobile Device Development UFCFX Mobile Device Development An Introduction to the Module.
Android and Eclipse Thaddeus Diamond CPSC 112. A Quick Introduction Eclipse is an IDE (Integrated Development Environment Open Source Much more full-featured.
Using JavaScript for Mobile App Development No Objective C or Java required! July 5th, 2011.
Lightning Talk Fred Rodriguez Nguyen Do CPSC 473 May 6, 2012.
Title slide to be used at the start of a module. Developing Mobile Apps Roland Guijt
Philly.NET Hands-on Labs JAVASCRIPT SERIES. July 9: JavaScript Syntax Visual Studio ◦Projects ◦Editors ◦Debugging ◦Script blocks ◦Minification and bundling.
Angelo Chan Kamran Bilgrami. Agenda ● WinJS - What and Why ● Modern Apps ● WinRT Architecture ● Demos o Controls o Data Bindings o Program LifeCycle Management.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Adobe Presentation Brijesh Patel | Working with AIR Native Extensions.
Introduction CIS 136 Building Mobile Apps 1. What is a mobile app? 2  Computer program  Designed for small devices  Smartphones  Tablets  Other handhelds.
Introduction to Mobile Programming. Slide 2 Overview Fundamentally, it all works the same way You get the SDK for the device (Droid, Windows, Apple) You.
Java Mobile Apps with GWT & PhoneGap Josh Marinacci, webOS Developer Advocate.
Introducing NativeScript [Pavel Kolev Software Telerik: a Progress company]
Developing Cross-Platform Applications with Visual Studio 2015
Understanding Xamarin Development Matt
Mobile web Sebastian Lopienski IT Technical Forum 29 June 2012.
Microsoft UI Stack Ronnie Saurenmann Technical Evangelist, Microsoft Switzerland
Social Media Apps Programming Min-Yuh Day, Ph.D. Assistant Professor Department of Information Management Tamkang University
Apache Cordova Tools in Visual Studio
 Installation of Android Development Environment  Creating the App with OpenGL ES API  Running the App on Emulator Android App Development.
Trunica Inc. 500 East Kennedy Blvd #300 Tampa, FL Cross Platform Mobile Apps With Cordova and Visual Studio 2015 © Copyright 2015.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 1.
The way of hybrid mobile development Hybrid Mobile Applications Telerik Software Academy
Using NativeScript to develop native apps for IOS and Android
KAASHIV INFOTECH Presents INTEL XDK For Inplant Training / Internship, please download the "Inplant training registration form" from our website
Ionic & Cordova crash course Ivan Varga
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
TypeScript for Alfresco and CMIS Steve Reiner CTO Integrated Semantics.
NativeScript – Open source platform to build Native iOS/Android Apps.
Best 5 Mobile App Development Tools for Developer's to think beyond the Limitation.
PhoneGap / PhoneGap Build #CreateTheWeb Mihai Corlan / Adobe Web Evangelist
JavaFX on Mobile and Embedded: Status and Future Plans
#SummitNow Alfresco Mobile SDKs in Action 06 November, 2013 Mike Hatfield Lead Engineer Mobile Apps, Alfresco.
Build Cross-Platform Mobile Apps Using Visual Studio A Telerik webinar by Jeffrey T. Fritz March 27, 2014 AND.
Android apps development - Eclipse, Android SDK, and ADT plugin Introduction of.
Build Hybrid Mobile Apps with Ionic, Angular, & Cordova Brian
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
PhoneGap. web-based mobile development framework, based on the open-source Cordova project. use standard web technologies such as HTML5, CSS3, and JavaScript.
TELERIK APP BUILDER ( Icenium ). POINTS TO DISCUSS  Introduction  Features  Versions  Supported Frameworks.
跨平台 Hybrid App 開發簡介 - 使用 Visual Studio Tool for Apache Cordova + HTML/JavaScript 陳葵懋 (Ian)
Software services delivering SharePoint, Mobile, and Business Intelligence solutions Creating mobile applications that integrate with SharePoint 2013 on-
Mobile App Development Using:
Beginning of Xamarin for iOS development
Introduction to Xamarin C# Everywhere
NativeScript Open-source framework for building truly native mobile apps with Angular, TypeScript or JavaScript. Thanks everyone for coming out today.
Xamarin Studio Xamarin Curriculum for Xamarin Studio
Introducing NativeScript
Apache Cordova Overview
Build Native Mobile Apps using JavaScript and Ionic
Multi-Device Hybrid Apps What, Why, and When to Use Hybrid Development Option Ervin Loh ALM Program Manager
Building Native Mobile Apps with Angular 2.0 and NativeScript
Office 365 Development.
And I have to create mobile apps too?
Office 365 Development.
Build /19/2019 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.
Introduce to Angular 6 Present by: Võ Văn Hào
MOBILE PROGRAMMING Meriska Defriani, S.Komp, M.Kom Introduction
Presentation transcript:

Game on! With Nativescript Jen Looper | DEVREL @Telerik @jenlooper

$ whoami Ph.D. … in Medieval French (13th century prose romance FTW) Retrained! Worked in startup, nonprofit, big corporate 14 yrs+ A lot of side projects – ladeezfirstmedia.com Now DevRel@Telerik

What is NativeScript?

A runtime for building and running native iOS, Android, and (soon) Windows Phone apps with a single, JavaScript code base

!= != != No DOM Direct access to native APIs in JS No cross compilation != Direct access to native APIs in JS

Why Nativescript? Skills reuse Standards-based JavaScript, CSS, optionally TypeScript Code reuse npm modules, 3rd-party iOS and Android libraries Easily use native APIs No wrappers to access native APIs Use native UI elements Open source!

Contribute! (nativescript.org/contribute)

NativeScript Android example this JavaScript code instantiates a Java android.text.format.Time() object, calls its set() method, then logs the return value of its format() method, which is the string "01/01/15". Output:

Nativescript ios example This JavaScript code instantiates an Objective-C UIAlertView class, sets its message property, and then calls its addButtonWithTitle() and show() methods. When you run a NativeScript iOS app with this code you'll see the alert "hello world!"

Use native classes which you can find in the native documentation to craft your nativescript code

How does this work?

NativeScript and JS VMs NativeScript runs JavaScript on a JavaScript VM JavaScriptCore on iOS V8 on Android NativeScript is a runtime that leverages platform-specific JavaScript engines (javascriptcore and V8)

Runs on V8 Runs on JavaScriptCore

NativeScript modules NativeScript-provided modules that provide cross-platform functionality. There are dozens of them and they’re easy to write yourself. NativeScript modules follow Node module’s conventions (CommonJS).

NativeScript file module this filesystem module allows you to pass through a path that you define as a parameter. On Android a new file will be created at that location, and on iOS we instantiate the NSFileManager as the default manager and tell it to create the file on that path. All with one require and one line of javascript.

NativeScript http module the http module allows you to make http calls and return json results.

Community modules

New! Plugin marketplace!

But how do I turn this into an app?

2 ways to use NativeScript 1) 2)

http://telerik.com/platform Backend-as-a-service Push notifications, cloud data, file storage, etc Analytics AppBuilder Cloud builds (build iOS apps on Windows, Windows Phone apps on a Mac) NativeScript debugging and tooling Screen Builder (app scaffolding) And more!

Telerik Appbuilder ide options In-Browser Client Visual Studio Extension Sublime Text Package Command-Line Interface

pricing https://www.telerik.com/purchase/appbuilder free 30 day trial

Nativescript cli Free and open source https://github.com/nativescript/nativescript-cli

Nativescript cli requirements https://github.com/nativescript/nativescript- cli#system-requirements JDK, Apache Ant, Android SDK Xcode, Xcode CLI tools, iOS SDK

Learn more! NativeScript Getting Started Guide: http://docs.nativescript.org/getting-started

STARTING A NEW PROJECT

RUNNING ON IOS

RUNNING ON android

Developer helps! 1. Livesync! 2. Sublime Text Settings to build Cmd + B Do this live – show livesync Show sublime build script Preferences > Browse Packages > User/nativescript.sublime-build 3. Deploy to device

App structure

APP.JS

PAGES XML markup structure Elements (e.g. <Page>, <Label>) are NativeScript modules

Custom xml components http://docs.nativescript.org/ui-with-xml#custom-components

Data binding Use the load function to bind data to an xml element

Data binding improved Or use the observable module to take care of it – mvvm people will feel comfortable.

css http://docs.nativescript.org/styling#supported-properties

css

Let’s build something!

A game inspired by… Show picture of llama or duck Very quickly timeout Played by pewdiepie and became popular Show picture of llama or duck Very quickly timeout Show high scores

Let’s use the Clarifai API too! A souped-up Llama vs. Duck with educational ++ Pick 2 images Query Clarifai to get 2 sets of tags Create game loop to let user choose This or That Localize the tags using Clarifai’s translations (20 languages!) (Settings area) Timeout after 5 seconds Show high scores (Telerik Platform integration) Show my scores (also Telerik Platform) http://clarifai.com/#demo

Presenting…

Thisorthat: a game of words and tags

Android download iOS download Open source! https://github.com/ jlooper/thisorthat- app iOS download

Thisorthat: code walkthrough Basic structure API integration Authentication View models Shared code Animation Platform-specific code Cocoapods and Toast plugin Npm module – email-validator

Thisorthat: Basic Code Structure Quick code structure rundown

Thisorthat: Api integration Shared/config.js Data persistence

Thisorthat: authentication Login Password Register

Thisorthat: View Models Shared/view-models/game-view-model.js Shared/view-models/user-view-model.js

Thisorthat: shared code Shared/navigation.js Shared/utils/form-util.js

Thisorthat: animation Nativescript’s built-in animation library

Thisorthat: images Content-scaled images Non-content-scaled images

Thisorthat: platform-specific code CSS Utils/action-bar-util.js Utils/form-util.js Inline: login/login.js

Thisorthat: Cocoapods and npm modules fancyAlert (YCTutorialBox) email-validator (generic npm module) Nativescript-toast (nativescript-based npm modules)

Let’s play!

HMU! Learn more about NativeScript at the Telerik booth and at nativescript.org Jen Looper @jenlooper jen.looper@telerik.com