SlideShare una empresa de Scribd logo
1 de 23
Building Native Android Apps
using Javascript
Abhishek Kant
अभिषेक कान्त
–B.E. MBA.
–15 years in industry
–MCAD. Certified Scrum Master.
–Course Author – NoSQL w/ CouchDB
–Ex-Satyam Computers.
–Ex-Microsoft
–@abhishekkant
Contact:
abhishek.kant@telerik.com
Phone:
+91-124-4300987/ 996
Wait .. What?
{ }
Native Andoid Apps
Built with JavaScript + CSS + XML
Single Code Base
What it is not….
No DOM
No Cross-Compilation
No Plugins Required
{N} is straight-up JS | Running as Native App
CommonJS
MVVM
Templates
We are Open Source
Choice #1: {N} is OSS on GitHub
Start @ https://www.nativescript.org/
Check out | Use it | Fork it
https://github.com/NativeScript/NativeScript
Yep, it's completely FREE .. there is no catch!
SeeittoBELIEVEit !
1. Create a NS App
2. Add Image to the app
3. Add a new page
4. Add an email
5. Add Email-validator
6. Validate for correct Email
What makes up a {N}
Project?
UI, Logic, Styling & Modules!
ATypical {N} Project
All your components in one place
The UI
{N} uses XML
You build a Visual Tree
Just like XAML/HTML
You get UI elements & Container controls
These become Native UI .. little Magical!
<Image source="{thumbnailImageSource}" width="72" height="72"/>
<Label text="{itemTitle}" textWrap="true" cssClass="title" />
<Button text="{authoredBy}“ width="150“ cssClass="author"/>
Can I invoke Native UI?
{N} supports Native UI element instatiation
var alert = new UIAlertView();
alert.message = "Hello World";
alert.addButtonWithTitle("OK");
alert.show();
Native UI
Invoked through JS!
The Styling
{N} uses the ubiquitous CSS
<Page loaded="load">
<Label text="{{ message }}" />
</Page>
.Label {
color: red;
font-size: 20;
margin: 20;
}
Yep - CSS to style Mobile App elements!
The Logic w/ JavaScript
{N} utilizes a bridge
Has full access to Native APIs
- That's all of iOS + Android APIs!
Uses Reflection to look up Native APIs
List of APIs for each Platform
Metadata pre-generated
Injected into App package @ Build time
Improving Logic w/ MVVM
{N} supports Rich DataBinding
XAML-like Data Binding
Off course .. it's 2-Way
Renders Adaptively for each platform
Data Binding powered by Polymer Expressions!
<Image source="{thumbnailImageSource}"
width="72"
height="72"
<Label verticalAlignment="top"/>
text="{{ num_comments ? num_comments
+ ' comments' : '' }" />
Cross Platform w/ Modules
{N} bridge that takes functionality X-Platform
- Just like a Node module
- Dozens available | You can write custom modules
A Module in action
{N} allows you to bring in what's needed
- This is a generic HTTP Module
- Works the same way in each Platform
var http = require("http");
http.getJSON("https://api.myservice.com"
)
.then(function(result){
// result is a JSON object
// do stuff
});
SeeittoBELIEVEit !
1. Create a NS App
2. Add Image to the app
3. Add a new page
4. Add an email
5. Add Email-validator
6. Validate for correct Email
How do I start with OSS?
{N} Command Line Interface makes it easy
Grab the NativeScript CLI:
npm install -g nativescript
tns create MyApp
tns platform add android
Create Project & Add Platforms:
tns run android
tns run android --emulator
Run Project on Device or Emulator:
Why {N} again?
You're a Mobile Ninja
{N} is here to help!
Native X-Platform Mobile with JS
NativeScript Blog | @NativeScript
Go build your dream app!

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Node.js
Node.jsNode.js
Node.js
 
Introducing Razor - A new view engine for ASP.NET
Introducing Razor - A new view engine for ASP.NET Introducing Razor - A new view engine for ASP.NET
Introducing Razor - A new view engine for ASP.NET
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
TallyJS #1 - Intro to AngularJS
TallyJS #1 - Intro to AngularJSTallyJS #1 - Intro to AngularJS
TallyJS #1 - Intro to AngularJS
 
Introduction to meteor
Introduction to meteorIntroduction to meteor
Introduction to meteor
 
Back to the ng2 Future
Back to the ng2 FutureBack to the ng2 Future
Back to the ng2 Future
 
What’s New and Hot in .NET 4.0
What’s New and Hot in .NET 4.0What’s New and Hot in .NET 4.0
What’s New and Hot in .NET 4.0
 
Unlimited Frameworks
Unlimited FrameworksUnlimited Frameworks
Unlimited Frameworks
 
Electron
ElectronElectron
Electron
 
MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?
MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?
MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?
 
Angular js - 10 reasons to choose angularjs
Angular js - 10 reasons to choose angularjs Angular js - 10 reasons to choose angularjs
Angular js - 10 reasons to choose angularjs
 
MVP Mix 2015 Leveraging MVVM on all Platforms
MVP Mix 2015  Leveraging MVVM on all PlatformsMVP Mix 2015  Leveraging MVVM on all Platforms
MVP Mix 2015 Leveraging MVVM on all Platforms
 
A Minimalist’s Attempt at Building a Distributed Application
A Minimalist’s Attempt at Building a Distributed ApplicationA Minimalist’s Attempt at Building a Distributed Application
A Minimalist’s Attempt at Building a Distributed Application
 
Agile Software Development by Sencha
Agile Software Development by SenchaAgile Software Development by Sencha
Agile Software Development by Sencha
 
Anton Sakharov: The risks you take when develop cross-platform apps using HT...
 Anton Sakharov: The risks you take when develop cross-platform apps using HT... Anton Sakharov: The risks you take when develop cross-platform apps using HT...
Anton Sakharov: The risks you take when develop cross-platform apps using HT...
 
Stripe con 2021 UI stack
Stripe con 2021 UI stackStripe con 2021 UI stack
Stripe con 2021 UI stack
 
Cross platform mobile development with xamarin and office 365
Cross platform mobile development with xamarin and office 365Cross platform mobile development with xamarin and office 365
Cross platform mobile development with xamarin and office 365
 
AngularJS
AngularJS AngularJS
AngularJS
 
Asp.net c# MVC-5 Training-Day-1 of Day-9
Asp.net c# MVC-5 Training-Day-1 of Day-9Asp.net c# MVC-5 Training-Day-1 of Day-9
Asp.net c# MVC-5 Training-Day-1 of Day-9
 
MEAN stack
MEAN stackMEAN stack
MEAN stack
 

Destacado

Dynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
Dynamic Adaptive Streaming over HTTP: From Content Creation to ConsumptionDynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
Dynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
Alpen-Adria-Universität
 
Resume-Ranjeet_Latest
Resume-Ranjeet_LatestResume-Ranjeet_Latest
Resume-Ranjeet_Latest
Ranjeet Kaur
 

Destacado (20)

Unidad 1
Unidad 1Unidad 1
Unidad 1
 
DP & Time Spirals
DP & Time SpiralsDP & Time Spirals
DP & Time Spirals
 
Employing chatbots
Employing chatbotsEmploying chatbots
Employing chatbots
 
Marketing CM
Marketing CMMarketing CM
Marketing CM
 
Open leermateriaal OSB
Open leermateriaal OSBOpen leermateriaal OSB
Open leermateriaal OSB
 
Lauwers College 130115 VO Content
Lauwers College 130115 VO ContentLauwers College 130115 VO Content
Lauwers College 130115 VO Content
 
Gestion de operaciones avance 2
Gestion de operaciones avance 2Gestion de operaciones avance 2
Gestion de operaciones avance 2
 
Celtic myths and legends
Celtic myths and legendsCeltic myths and legends
Celtic myths and legends
 
Web 2,0 for organizational Knowledge Management 2009
Web 2,0 for organizational Knowledge Management 2009Web 2,0 for organizational Knowledge Management 2009
Web 2,0 for organizational Knowledge Management 2009
 
Python Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External ProgramsPython Programming Essentials - M40 - Invoking External Programs
Python Programming Essentials - M40 - Invoking External Programs
 
Fintech Overview - Bekkozha Muslimov
Fintech Overview - Bekkozha MuslimovFintech Overview - Bekkozha Muslimov
Fintech Overview - Bekkozha Muslimov
 
Business Rules Framework
Business Rules FrameworkBusiness Rules Framework
Business Rules Framework
 
Mindfulness e Tradizioni Meditative
Mindfulness e Tradizioni MeditativeMindfulness e Tradizioni Meditative
Mindfulness e Tradizioni Meditative
 
Dynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
Dynamic Adaptive Streaming over HTTP: From Content Creation to ConsumptionDynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
Dynamic Adaptive Streaming over HTTP: From Content Creation to Consumption
 
Learning Sanskrit: The Easy and Practical Way - Workbook 1
Learning Sanskrit: The Easy and Practical Way -  Workbook 1Learning Sanskrit: The Easy and Practical Way -  Workbook 1
Learning Sanskrit: The Easy and Practical Way - Workbook 1
 
Resume-Ranjeet_Latest
Resume-Ranjeet_LatestResume-Ranjeet_Latest
Resume-Ranjeet_Latest
 
5 Cool LinkedIn Features You Probably Didn't Know About
5 Cool LinkedIn Features You Probably Didn't Know About5 Cool LinkedIn Features You Probably Didn't Know About
5 Cool LinkedIn Features You Probably Didn't Know About
 
Using business rules to make processes simpler, smarter and more agile
Using business rules to make processes simpler, smarter and more agileUsing business rules to make processes simpler, smarter and more agile
Using business rules to make processes simpler, smarter and more agile
 
Бот для Telegram и сайт на WordPress — смогут ли ужиться вместе?
Бот для Telegram и сайт  на WordPress — смогут  ли ужиться вместе?Бот для Telegram и сайт  на WordPress — смогут  ли ужиться вместе?
Бот для Telegram и сайт на WordPress — смогут ли ужиться вместе?
 
La rivoluzione dei chatbot
La rivoluzione dei chatbotLa rivoluzione dei chatbot
La rivoluzione dei chatbot
 

Similar a Building Native Android Apps with JavaScript

ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjects
Chris Schilling
 
Cross-Platform Mobile Development in Visual Studio
Cross-Platform Mobile Development in Visual StudioCross-Platform Mobile Development in Visual Studio
Cross-Platform Mobile Development in Visual Studio
bryan costanich
 

Similar a Building Native Android Apps with JavaScript (20)

Visual Studio 2017 Launch Event
Visual Studio 2017 Launch EventVisual Studio 2017 Launch Event
Visual Studio 2017 Launch Event
 
NativeScript + Push Notifications
NativeScript + Push NotificationsNativeScript + Push Notifications
NativeScript + Push Notifications
 
Nativescript with angular 2
Nativescript with angular 2Nativescript with angular 2
Nativescript with angular 2
 
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
NativeScript: Cross-Platform Mobile Apps with JavaScript and AngularNativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
 
DotVVM Fundamentals
DotVVM FundamentalsDotVVM Fundamentals
DotVVM Fundamentals
 
Vitaliy Kryvonos_CV_up
Vitaliy Kryvonos_CV_upVitaliy Kryvonos_CV_up
Vitaliy Kryvonos_CV_up
 
Resume
ResumeResume
Resume
 
Proposal
ProposalProposal
Proposal
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
Intro to appcelerator
Intro to appceleratorIntro to appcelerator
Intro to appcelerator
 
ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjects
 
Create Restful Web Application With Node.js Express Framework
Create Restful Web Application With Node.js Express FrameworkCreate Restful Web Application With Node.js Express Framework
Create Restful Web Application With Node.js Express Framework
 
That’s not your var – JavaScript best practices for C# developers
That’s not your var – JavaScript best practices for C# developersThat’s not your var – JavaScript best practices for C# developers
That’s not your var – JavaScript best practices for C# developers
 
Node js
Node jsNode js
Node js
 
Cross platform mobile app development tools review
Cross platform mobile app development tools reviewCross platform mobile app development tools review
Cross platform mobile app development tools review
 
A164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkA164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdk
 
Nativescript
NativescriptNativescript
Nativescript
 
Cross-Platform Mobile Development in Visual Studio
Cross-Platform Mobile Development in Visual StudioCross-Platform Mobile Development in Visual Studio
Cross-Platform Mobile Development in Visual Studio
 
Expo - Zero to App.pptx
Expo - Zero to App.pptxExpo - Zero to App.pptx
Expo - Zero to App.pptx
 
Node js Introduction
Node js IntroductionNode js Introduction
Node js Introduction
 

Más de Abhishek Kant

Solving Agile Project Management Challenges with TeamPulse
Solving Agile Project Management Challenges with TeamPulseSolving Agile Project Management Challenges with TeamPulse
Solving Agile Project Management Challenges with TeamPulse
Abhishek Kant
 
Collaborative Agile Development with TeamPulse
Collaborative Agile Development with TeamPulseCollaborative Agile Development with TeamPulse
Collaborative Agile Development with TeamPulse
Abhishek Kant
 
Introduction to New Age Applications with Kendo UI
Introduction to New Age Applications with Kendo UIIntroduction to New Age Applications with Kendo UI
Introduction to New Age Applications with Kendo UI
Abhishek Kant
 
Building Enterprise Apps for windows Phone 7
Building Enterprise Apps for windows Phone 7Building Enterprise Apps for windows Phone 7
Building Enterprise Apps for windows Phone 7
Abhishek Kant
 

Más de Abhishek Kant (20)

Omni-Channel Marketing in the Cloud
Omni-Channel Marketing in the CloudOmni-Channel Marketing in the Cloud
Omni-Channel Marketing in the Cloud
 
From Data To Insights
From Data To InsightsFrom Data To Insights
From Data To Insights
 
New Age User Interfaces
New Age User InterfacesNew Age User Interfaces
New Age User Interfaces
 
Digital Transformation
Digital TransformationDigital Transformation
Digital Transformation
 
Swiss Army Knife for Automation Testing
Swiss Army Knife for Automation TestingSwiss Army Knife for Automation Testing
Swiss Army Knife for Automation Testing
 
Using Business Rules to Make Your Business Process Smarter, Simpler and More ...
Using Business Rules to Make Your Business Process Smarter, Simpler and More ...Using Business Rules to Make Your Business Process Smarter, Simpler and More ...
Using Business Rules to Make Your Business Process Smarter, Simpler and More ...
 
Log Management and Analysis for Cloud Applications
Log Management and Analysis for Cloud ApplicationsLog Management and Analysis for Cloud Applications
Log Management and Analysis for Cloud Applications
 
Optimize Data Connectivity in .NET Applications
Optimize Data Connectivity in .NET ApplicationsOptimize Data Connectivity in .NET Applications
Optimize Data Connectivity in .NET Applications
 
Beginning IoT for Developers
Beginning IoT for DevelopersBeginning IoT for Developers
Beginning IoT for Developers
 
Drag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseDrag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress Rollbase
 
Using SignalR with Kendo UI
Using SignalR with Kendo UIUsing SignalR with Kendo UI
Using SignalR with Kendo UI
 
Leverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik DevelopersLeverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik Developers
 
Develop Hybrid Mobile Application with Azure Mobile Services and Telerik Plat...
Develop Hybrid Mobile Application with Azure Mobile Services and Telerik Plat...Develop Hybrid Mobile Application with Azure Mobile Services and Telerik Plat...
Develop Hybrid Mobile Application with Azure Mobile Services and Telerik Plat...
 
Gathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile appsGathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile apps
 
Solving Agile Project Management Challenges with TeamPulse
Solving Agile Project Management Challenges with TeamPulseSolving Agile Project Management Challenges with TeamPulse
Solving Agile Project Management Challenges with TeamPulse
 
Collaborative Agile Development with TeamPulse
Collaborative Agile Development with TeamPulseCollaborative Agile Development with TeamPulse
Collaborative Agile Development with TeamPulse
 
Introduction to New Age Applications with Kendo UI
Introduction to New Age Applications with Kendo UIIntroduction to New Age Applications with Kendo UI
Introduction to New Age Applications with Kendo UI
 
New Age Applications with Kendo UI
New Age Applications with Kendo UINew Age Applications with Kendo UI
New Age Applications with Kendo UI
 
Building Enterprise Apps for windows Phone 7
Building Enterprise Apps for windows Phone 7Building Enterprise Apps for windows Phone 7
Building Enterprise Apps for windows Phone 7
 
Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 

Building Native Android Apps with JavaScript

  • 1. Building Native Android Apps using Javascript
  • 2. Abhishek Kant अभिषेक कान्त –B.E. MBA. –15 years in industry –MCAD. Certified Scrum Master. –Course Author – NoSQL w/ CouchDB –Ex-Satyam Computers. –Ex-Microsoft –@abhishekkant Contact: abhishek.kant@telerik.com Phone: +91-124-4300987/ 996
  • 3. Wait .. What? { } Native Andoid Apps Built with JavaScript + CSS + XML Single Code Base
  • 4. What it is not…. No DOM No Cross-Compilation No Plugins Required {N} is straight-up JS | Running as Native App
  • 6.
  • 7.
  • 8. We are Open Source Choice #1: {N} is OSS on GitHub Start @ https://www.nativescript.org/ Check out | Use it | Fork it https://github.com/NativeScript/NativeScript Yep, it's completely FREE .. there is no catch!
  • 9. SeeittoBELIEVEit ! 1. Create a NS App 2. Add Image to the app 3. Add a new page 4. Add an email 5. Add Email-validator 6. Validate for correct Email
  • 10. What makes up a {N} Project? UI, Logic, Styling & Modules!
  • 11. ATypical {N} Project All your components in one place
  • 12. The UI {N} uses XML You build a Visual Tree Just like XAML/HTML You get UI elements & Container controls These become Native UI .. little Magical! <Image source="{thumbnailImageSource}" width="72" height="72"/> <Label text="{itemTitle}" textWrap="true" cssClass="title" /> <Button text="{authoredBy}“ width="150“ cssClass="author"/>
  • 13. Can I invoke Native UI? {N} supports Native UI element instatiation var alert = new UIAlertView(); alert.message = "Hello World"; alert.addButtonWithTitle("OK"); alert.show(); Native UI Invoked through JS!
  • 14. The Styling {N} uses the ubiquitous CSS <Page loaded="load"> <Label text="{{ message }}" /> </Page> .Label { color: red; font-size: 20; margin: 20; } Yep - CSS to style Mobile App elements!
  • 15. The Logic w/ JavaScript {N} utilizes a bridge Has full access to Native APIs - That's all of iOS + Android APIs! Uses Reflection to look up Native APIs List of APIs for each Platform Metadata pre-generated Injected into App package @ Build time
  • 16. Improving Logic w/ MVVM {N} supports Rich DataBinding XAML-like Data Binding Off course .. it's 2-Way Renders Adaptively for each platform Data Binding powered by Polymer Expressions! <Image source="{thumbnailImageSource}" width="72" height="72" <Label verticalAlignment="top"/> text="{{ num_comments ? num_comments + ' comments' : '' }" />
  • 17. Cross Platform w/ Modules {N} bridge that takes functionality X-Platform - Just like a Node module - Dozens available | You can write custom modules
  • 18. A Module in action {N} allows you to bring in what's needed - This is a generic HTTP Module - Works the same way in each Platform var http = require("http"); http.getJSON("https://api.myservice.com" ) .then(function(result){ // result is a JSON object // do stuff });
  • 19. SeeittoBELIEVEit ! 1. Create a NS App 2. Add Image to the app 3. Add a new page 4. Add an email 5. Add Email-validator 6. Validate for correct Email
  • 20. How do I start with OSS? {N} Command Line Interface makes it easy Grab the NativeScript CLI: npm install -g nativescript tns create MyApp tns platform add android Create Project & Add Platforms: tns run android tns run android --emulator Run Project on Device or Emulator:
  • 22. You're a Mobile Ninja {N} is here to help!
  • 23. Native X-Platform Mobile with JS NativeScript Blog | @NativeScript Go build your dream app!