SlideShare a Scribd company logo
1 of 66
AppBuilder in 45 Minutes
Jen Looper
Jen Looper
Developer Advocate, Telerik
@jenlooper
I <3 mobile apps
So, you want to create mobile apps too.
Stop the madness!
Use your web skills to create a cross-platform hybrid mobile app
Treats for everyone!
Telerik AppBuilder can help!
Why you'll love Hybrid
• True single Codebase for all platforms
• Ease of HTM5/CSS/JavaScript
• Access to Native APIs
• App Store presence & monetization
• Users cannot tell the difference
AppBuilder under the covers
• Uses Apache Cordova
• JavaScript proxies to native APIs
AppBuilder is…
Cross-Platform Mobile Development, simplified!
• Developer freedom!
• End-to-End tooling
• All the backend services you need
Your Coding Environment – up to you!
Visual Studio Extension
Use your favorite IDE to build
Sublime Text Plugin
Windows Desktop Client
Rich Desktop Options
The Telerik Platform: platform.telerik.com
In-Browser client
CLI
Create an app using the in-browser AppBuilder Platform in 4
easy steps
1. Create an account at https://platform.telerik.com and sign in
Create an app using the in-browser AppBuilder Platform in 4
easy steps
2. Create an app project
Create an app using the in-browser AppBuilder Platform in 4
easy steps
3. Create a blank app
Create an app using the in-browser AppBuilder Platform in 4
easy steps
4. Add elements to your hybrid project
You’re ready to roll!
Let’s come back later to the in-browser experience
A different workflow
1. Start building your app
with the CLI
2. Push to github
3. End up in-browser with
code pulled from github
Get started with the AppBuilder CLI
$appbuilder create hybrid MySampleApp --appid
com.ladeezfirstmedia.myKendoSample
$cd MySampleApp
$appbuilder simulate
Creates a basic tabstrip app
Try sample apps via the CLI
$appbuilder sample clone facebook-api
$cd facebook-api
$appbuilder simulate
Creates a sample facebook-powered app
Simulate like crazy
$appbuilder simulate
Check out your app on all kinds of phones and tablets
Really nice tooling!
$appbuilder simulate
Ensure responsiveness
Debug in the browser, track local storage, test connectivity
behavior, mock geolocation
$appbuilder simulate
Leverage Chrome devtools –
use what you already know!
Test your app in a native emulator
$appbuilder emulate ios
Or
$appbuilder emulate android
Or
$appbuilder emulate wp8
Get a closer idea of how your
app will behave on various
platforms
Test your app on device
$appbuilder build ios –companion
Creates a QR code locally for you to test on your
phone using the installed Companion App
It’s on my
iPhone!
Test outside the companion app
First, get your provisioning sorted out
$appbuilder certificate import
$appbuilder provision import
Then, build for device using your app’s provisioning
profile:
$appbuilder build ios –my-apps-provisioning-profile
Apps in progress
Magic stuff: livesync for fast debugging
Livesync three ways:
1. On AppBuilder Companion
App (3 finger gesture)
2. On built app on device
(same)
3. In Simulator (automatically!)
Make changes and view quickly
without needing to rebuild
One more thing…
Make apps the way you want.
Let’s get cooking!
Let’s create a TriviaCrack Clone using Telerik AppBuilder
Requirements for “QuizSlam”:
1. Integration with content – we’ll use Quizlet
2. Ability to choose quiz from Quizlet
3. Game Loop – spin to get random number, show 1 question and 4
possible answers, handle correct/incorrect, scorekeeping
4. Navigation – 5 sections
5. Chat (chat button) - TBD
6. Lists of friends with scores (friends button) - TBD
7. Saving Scores (scores button) – entails login and backend integration
Sketch a GUI:
Disclaimer!
This is just one way to build an app in AppBuilder. Do what works for you!
1. Start with the secret sauce!
Seed code with:
• styles set to my liking
• colors ready
• fonts installed,
• two sample navigation strategies,
• optional login code available
• modularized code using require.js
Tabstrip navigation
Drawer navigation available
https://github.com/jlooper/Kendo-Seed
2. Adjust colors and set navigation
MaterialPalettte.com
Tabs
Drawer
Navigation code
<footer data-role="footer">
<div data-role="tabstrip">
<a href="#new"><div class="icon home"></div></a>
<a href="#chat"><div class="icon message"></div></a>
<a href="#friends"><div class="icon users"></div></a>
<a href="#scores"><div class="icon trophy"></div></a>
<a href="#menu" data-rel="drawer"><div class="icon menu"></div></a>
</div>
</div>
</footer>
We’re going to
tackle these 2 bits
3. Override icons and import .woff files to project
Icomoon.io app
4a. Code structure – index.html
<script src="bower_components/requirejs/require.js" data-main="main.js"></script>
Include require.js
4b. Code structure – main.js
require.config({
paths: {
'text': 'bower_components/requirejs-text/text'
}
});
define([
'app'
], function (app) {
…
app.init();
}
});
Configure require.js
4c. Code structure – app.js
define([
'views/New/New',
'views/Spin/Spin',
'views/Home/Home',
'views/Scores/Scores',
'views/Auth/Auth’
], function () {
var app = window.app = window.app || {};
var init = function () {
app.instance = new kendo.mobile.Application(
document.body,
{ skin: 'flat', loading: "<h1>Please wait...</h1>" }
);
};
return {
init: init
};
});
Define required elements
4d. Code structure – views
All views included in /views:
5. Animation
Animate.css CSS Animations FTW
6. Quizlet integration
In New.js (start screen):
• set initial quiz id in localStorage
• grab content of quiz from Quizlet
• parse it into Q/A pairs:
Data!!
7. Game Loop Time!!!
• Spin wheel
• pick a random number from quiz set
• show that question and 4 possible answers
• handle correct/incorrect.
• Correct = allow to spin again, Incorrect = show error, stop from continuing.
The fun stuff!
Pick – Spin - Quiz
Demo!
8. Add Backend
1. Add Everlive .min.js to index.html:
<script
src="bower_components/everlive/min/everlive.all.
min.js"></script>
2. Add Login routine, show forms if token not set,
otherwise show scores saved in backend
3. In platform.telerik.com, create a Backend
Services project associated to your current
project
4. Enable Cloud Services and User Management
5. Grab your Api keys and store them locally
6. Create an account and get a token! Now you’re
logged in and can pass data around
Login/Registration/Forgot Password
Works with email services automatically triggered
to handle common user administration tasks
(forgot password, welcome registration) in
backend – all customizable in backend
9. Add Scorekeeping capability
Save accuracy scores to backend when user clicks
‘done’
Create a datatype in the backend
called ‘Scores’ with a field called
‘Score’ to store the data
var Scores = new kendo.data.DataSource({
type: "everlive",
transport: {
typeName: "Scores"
}
});
var apiKey = localStorage.getItem("apiKey");
var token = localStorage.getItem("token");
var el = new Everlive({
apiKey: apiKey,
url: '//api.everlive.com/v1/',
scheme: 'https',
token: token
});
Prep your code
to pass the
data
Start posting scores!
sendScore:function(e){
var score = localStorage.getItem("numCorrect")/localStorage.getItem("numAttempts")
//send to backend
var data = el.data('Scores');
data.get()
.then(function(data){
var data = el.data('Scores');
data.create({ 'Score': score},
function(data){
alert("Score saved!")
},
function(error){
alert(JSON.stringify(error));
});
});
}
It’s my score
Display your scores
var data = el.data('Scores');
data.get()
.then(function(data){
$("#score-list").kendoListView({
dataSource: Scores,
template: kendo.template($("#score-
template").html()),
});
});
Grab the
scores
Display your scores
<ul id="score-list" data-style="inset" data-role="listview"
data-template="score-template"></ul>
<script id="score-template" type="text/x-kendo-template">
<li>
<div style="padding:5px">
#: kendo.toString(new Date(CreatedAt),'g')#
# if (typeof(Score) !== 'undefined') { #
Score - #: Score*100 #%
# } #
</div>
</li>
</script>
Show them on the frontend in a
Kendo template
Voila!
This content type is public, so you
see everyone’s scores. You can
change this by setting it to private
10. One more thing! Add a Plugin
A sample AdMob ad setup
Let’s add an AdMob ad
1. Set up an ad in AdMob
2. Add the AdMob Plugin from plugins.telerik.com
3. Add the ad to your view
Add plugin via CLI
$ appbuilder plugin add "AdMob"
…or in browser
Deploy time!
Let’s move to the in-browser toolset. Migrate your codebase either by:
• Committing it from your local to Github and bringing it into the Platform
• Zipping your files and importing to Platform
View your app in companion app
Or in a built app
Load up your provisioning profiles for iOS here
Manage icons and splash screens
Install on your device
Here’s that
ad
Finally, we have an app ready for production!
Publish from AppBuilder – send your app to the various stores
There is so much more in AppBuilder!
• Ask Developer Relations
• Ping me! @jenlooper
• Read more on TDN (developer.telerik.com)
• Visit the blogs (blogs.telerik.com)
• Follow us on Twitter @Telerik
• Sign up for an account at platform.telerik.com
It’s like an awesome smorgasbord!
Thank you! Now roll up your sleeves and start building!
Jen Looper
@jenlooper
Developer Advocate
Telerik Developer Relations Team
Evaluation: http://bit.ly/next-looper-1
No
pressure!

More Related Content

What's hot

AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...
AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...
AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...Amazon Web Services
 
iOS Coding Best Practices
iOS Coding Best PracticesiOS Coding Best Practices
iOS Coding Best PracticesJean-Luc David
 
What is Android L ?
What is Android L ?What is Android L ?
What is Android L ?E2LOGY
 
Kwikset 925 kevo single cylinder bluetooth enabled deadbolt
Kwikset 925 kevo single cylinder bluetooth enabled deadboltKwikset 925 kevo single cylinder bluetooth enabled deadbolt
Kwikset 925 kevo single cylinder bluetooth enabled deadboltbestwirelesschargers
 
Enabling New Voice Experiences with Amazon Alexa and AWS Lambda
Enabling New Voice Experiences with Amazon Alexa and AWS LambdaEnabling New Voice Experiences with Amazon Alexa and AWS Lambda
Enabling New Voice Experiences with Amazon Alexa and AWS LambdaAmazon Web Services
 
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case StudiesReply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case StudiesAndrea Mercanti
 
How to create a Voice – Enabled IoT solution for Alexa
How to create a Voice – Enabled IoT solution for AlexaHow to create a Voice – Enabled IoT solution for Alexa
How to create a Voice – Enabled IoT solution for AlexaAmazon Web Services
 
Multi-Factor Auth in Alexa Skills - Faisal Valli
Multi-Factor Auth in Alexa Skills - Faisal ValliMulti-Factor Auth in Alexa Skills - Faisal Valli
Multi-Factor Auth in Alexa Skills - Faisal ValliOscar Merry
 
Embedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsEmbedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsCisco DevNet
 
Introduction to tvOS app Development !
Introduction to tvOS app Development !Introduction to tvOS app Development !
Introduction to tvOS app Development !Snehal Patil
 
Skyhook mo mo beijing
Skyhook mo mo beijingSkyhook mo mo beijing
Skyhook mo mo beijingmomobeijing
 
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]Apple Watch Kit trainning slide [team iOS - RikkeiSoft]
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]Hoang Ngo Anh
 
Rapid mobile app development using Ionic framework
Rapid mobile app development using Ionic frameworkRapid mobile app development using Ionic framework
Rapid mobile app development using Ionic frameworkSwaminathan Vetri
 
Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.     Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex. Amazon Web Services
 
Developing Windows Phone Apps with the Nokia Imaging SDK
Developing Windows Phone Apps with the Nokia Imaging SDKDeveloping Windows Phone Apps with the Nokia Imaging SDK
Developing Windows Phone Apps with the Nokia Imaging SDKNick Landry
 
Build mobile apps 3 times faster with Firebase
Build mobile apps 3 times faster with FirebaseBuild mobile apps 3 times faster with Firebase
Build mobile apps 3 times faster with FirebaseEGANY Tech.
 

What's hot (20)

AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...
AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...
AWS re:Invent 2016: Workshop: Build an Alexa-Enabled Product with Raspberry P...
 
iOS Coding Best Practices
iOS Coding Best PracticesiOS Coding Best Practices
iOS Coding Best Practices
 
What is Android L ?
What is Android L ?What is Android L ?
What is Android L ?
 
Apple Watch Intro
Apple Watch IntroApple Watch Intro
Apple Watch Intro
 
Watch kit
Watch kitWatch kit
Watch kit
 
Kwikset 925 kevo single cylinder bluetooth enabled deadbolt
Kwikset 925 kevo single cylinder bluetooth enabled deadboltKwikset 925 kevo single cylinder bluetooth enabled deadbolt
Kwikset 925 kevo single cylinder bluetooth enabled deadbolt
 
Enabling New Voice Experiences with Amazon Alexa and AWS Lambda
Enabling New Voice Experiences with Amazon Alexa and AWS LambdaEnabling New Voice Experiences with Amazon Alexa and AWS Lambda
Enabling New Voice Experiences with Amazon Alexa and AWS Lambda
 
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case StudiesReply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
Reply Netcamp PoliTo - AWS IoT - Grohe and Caleffi Case Studies
 
How to create a Voice – Enabled IoT solution for Alexa
How to create a Voice – Enabled IoT solution for AlexaHow to create a Voice – Enabled IoT solution for Alexa
How to create a Voice – Enabled IoT solution for Alexa
 
Multi-Factor Auth in Alexa Skills - Faisal Valli
Multi-Factor Auth in Alexa Skills - Faisal ValliMulti-Factor Auth in Alexa Skills - Faisal Valli
Multi-Factor Auth in Alexa Skills - Faisal Valli
 
Intro to MonoTouch
Intro to MonoTouchIntro to MonoTouch
Intro to MonoTouch
 
Embedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsEmbedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your apps
 
Video indexer
Video indexerVideo indexer
Video indexer
 
Introduction to tvOS app Development !
Introduction to tvOS app Development !Introduction to tvOS app Development !
Introduction to tvOS app Development !
 
Skyhook mo mo beijing
Skyhook mo mo beijingSkyhook mo mo beijing
Skyhook mo mo beijing
 
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]Apple Watch Kit trainning slide [team iOS - RikkeiSoft]
Apple Watch Kit trainning slide [team iOS - RikkeiSoft]
 
Rapid mobile app development using Ionic framework
Rapid mobile app development using Ionic frameworkRapid mobile app development using Ionic framework
Rapid mobile app development using Ionic framework
 
Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.     Building voice enabled Apps with Alexa voice service and Amazon Lex.
Building voice enabled Apps with Alexa voice service and Amazon Lex.
 
Developing Windows Phone Apps with the Nokia Imaging SDK
Developing Windows Phone Apps with the Nokia Imaging SDKDeveloping Windows Phone Apps with the Nokia Imaging SDK
Developing Windows Phone Apps with the Nokia Imaging SDK
 
Build mobile apps 3 times faster with Firebase
Build mobile apps 3 times faster with FirebaseBuild mobile apps 3 times faster with Firebase
Build mobile apps 3 times faster with Firebase
 

Similar to Create a Mobile App in 45 Minutes with AppBuilder

[Devoxx Morocco 2015] Apache Cordova In Action
[Devoxx Morocco 2015] Apache Cordova In Action[Devoxx Morocco 2015] Apache Cordova In Action
[Devoxx Morocco 2015] Apache Cordova In ActionHazem Saleh
 
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache CordovaHazem Saleh
 
Fastlane - Automation and Continuous Delivery for iOS Apps
Fastlane - Automation and Continuous Delivery for iOS AppsFastlane - Automation and Continuous Delivery for iOS Apps
Fastlane - Automation and Continuous Delivery for iOS AppsSarath C
 
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache CordovaHazem Saleh
 
Full Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemFull Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemDigamber Singh
 
Apache Cordova In Action
Apache Cordova In ActionApache Cordova In Action
Apache Cordova In ActionHazem Saleh
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkTroy Miles
 
From Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) AgainFrom Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) Againjonknapp
 
Playing with parse.com
Playing with parse.comPlaying with parse.com
Playing with parse.comJUG Genova
 
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014Hazem Saleh
 
Introduction phonegap
Introduction phonegapIntroduction phonegap
Introduction phonegapRakesh Jha
 
Advanced programing in phonegap
Advanced programing in phonegapAdvanced programing in phonegap
Advanced programing in phonegapRakesh Jha
 
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTree
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTreeThe Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTree
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTreeRedBlackTree
 
From Idea to App (or “How we roll at Small Town Heroes”)
From Idea to App (or “How we roll at Small Town Heroes”)From Idea to App (or “How we roll at Small Town Heroes”)
From Idea to App (or “How we roll at Small Town Heroes”)Bramus Van Damme
 
Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)ejlp12
 
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...Wim Selles
 

Similar to Create a Mobile App in 45 Minutes with AppBuilder (20)

[Devoxx Morocco 2015] Apache Cordova In Action
[Devoxx Morocco 2015] Apache Cordova In Action[Devoxx Morocco 2015] Apache Cordova In Action
[Devoxx Morocco 2015] Apache Cordova In Action
 
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova
[JMaghreb 2014] Developing JavaScript Mobile Apps Using Apache Cordova
 
Intro to appcelerator
Intro to appceleratorIntro to appcelerator
Intro to appcelerator
 
Fastlane - Automation and Continuous Delivery for iOS Apps
Fastlane - Automation and Continuous Delivery for iOS AppsFastlane - Automation and Continuous Delivery for iOS Apps
Fastlane - Automation and Continuous Delivery for iOS Apps
 
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova
[JavaLand 2015] Developing JavaScript Mobile Apps Using Apache Cordova
 
Full Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication SystemFull Angular 7 Firebase Authentication System
Full Angular 7 Firebase Authentication System
 
Apache Cordova In Action
Apache Cordova In ActionApache Cordova In Action
Apache Cordova In Action
 
Nativescript with angular 2
Nativescript with angular 2Nativescript with angular 2
Nativescript with angular 2
 
React Native
React NativeReact Native
React Native
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
From Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) AgainFrom Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) Again
 
Playing with parse.com
Playing with parse.comPlaying with parse.com
Playing with parse.com
 
Android CI and Appium
Android CI and AppiumAndroid CI and Appium
Android CI and Appium
 
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014
Developing Native Mobile Apps Using JavaScript, ApacheCon NA 2014
 
Introduction phonegap
Introduction phonegapIntroduction phonegap
Introduction phonegap
 
Advanced programing in phonegap
Advanced programing in phonegapAdvanced programing in phonegap
Advanced programing in phonegap
 
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTree
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTreeThe Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTree
The Mobile ToolChain with Fastlane - Code Red Talk at RedBlackTree
 
From Idea to App (or “How we roll at Small Town Heroes”)
From Idea to App (or “How we roll at Small Town Heroes”)From Idea to App (or “How we roll at Small Town Heroes”)
From Idea to App (or “How we roll at Small Town Heroes”)
 
Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)Introduction to Apache Cordova (Phonegap)
Introduction to Apache Cordova (Phonegap)
 
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...
How React Native, Appium and me made each other shine @ContinuousDeliveryAmst...
 

More from Jen Looper

Staying Fresh and Avoiding Burnout
Staying Fresh and Avoiding BurnoutStaying Fresh and Avoiding Burnout
Staying Fresh and Avoiding BurnoutJen Looper
 
Game On With NativeScript
Game On With NativeScriptGame On With NativeScript
Game On With NativeScriptJen Looper
 
NativeScript and Angular
NativeScript and AngularNativeScript and Angular
NativeScript and AngularJen Looper
 
Sharing Code between Web and Mobile Apps
Sharing Code between Web and Mobile AppsSharing Code between Web and Mobile Apps
Sharing Code between Web and Mobile AppsJen Looper
 
Beacons, Plants, Boxes
Beacons, Plants, BoxesBeacons, Plants, Boxes
Beacons, Plants, BoxesJen Looper
 
Ignite your app development with Angular, NativeScript and Firebase
Ignite your app development with Angular, NativeScript and FirebaseIgnite your app development with Angular, NativeScript and Firebase
Ignite your app development with Angular, NativeScript and FirebaseJen Looper
 
Hackathon Slides
Hackathon SlidesHackathon Slides
Hackathon SlidesJen Looper
 
Using Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT NearablesUsing Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT NearablesJen Looper
 
Swipe Left for NativeScript
Swipe Left for NativeScriptSwipe Left for NativeScript
Swipe Left for NativeScriptJen Looper
 
Angular 2 and NativeScript
Angular 2 and NativeScriptAngular 2 and NativeScript
Angular 2 and NativeScriptJen Looper
 
Crafting an Adventure: The Azure Maya Mystery
Crafting an Adventure: The Azure Maya MysteryCrafting an Adventure: The Azure Maya Mystery
Crafting an Adventure: The Azure Maya MysteryJen Looper
 
Re-Building a Tech Community - Post Pandemic!
Re-Building a Tech Community - Post Pandemic!Re-Building a Tech Community - Post Pandemic!
Re-Building a Tech Community - Post Pandemic!Jen Looper
 
Building a Tech Community in Ten Easy Steps
Building a Tech Community in Ten Easy StepsBuilding a Tech Community in Ten Easy Steps
Building a Tech Community in Ten Easy StepsJen Looper
 
Becoming a Green Developer
Becoming a Green DeveloperBecoming a Green Developer
Becoming a Green DeveloperJen Looper
 
Azure Static Web Apps
Azure Static Web AppsAzure Static Web Apps
Azure Static Web AppsJen Looper
 
Creating a Great Workshop
Creating a Great WorkshopCreating a Great Workshop
Creating a Great WorkshopJen Looper
 
The Ethics of Generative AI: A Humanist's Guide
The Ethics of Generative AI: A Humanist's GuideThe Ethics of Generative AI: A Humanist's Guide
The Ethics of Generative AI: A Humanist's GuideJen Looper
 
Zero to Hipster with the M.I.K.E. Stack
Zero to Hipster with the M.I.K.E. StackZero to Hipster with the M.I.K.E. Stack
Zero to Hipster with the M.I.K.E. StackJen Looper
 

More from Jen Looper (18)

Staying Fresh and Avoiding Burnout
Staying Fresh and Avoiding BurnoutStaying Fresh and Avoiding Burnout
Staying Fresh and Avoiding Burnout
 
Game On With NativeScript
Game On With NativeScriptGame On With NativeScript
Game On With NativeScript
 
NativeScript and Angular
NativeScript and AngularNativeScript and Angular
NativeScript and Angular
 
Sharing Code between Web and Mobile Apps
Sharing Code between Web and Mobile AppsSharing Code between Web and Mobile Apps
Sharing Code between Web and Mobile Apps
 
Beacons, Plants, Boxes
Beacons, Plants, BoxesBeacons, Plants, Boxes
Beacons, Plants, Boxes
 
Ignite your app development with Angular, NativeScript and Firebase
Ignite your app development with Angular, NativeScript and FirebaseIgnite your app development with Angular, NativeScript and Firebase
Ignite your app development with Angular, NativeScript and Firebase
 
Hackathon Slides
Hackathon SlidesHackathon Slides
Hackathon Slides
 
Using Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT NearablesUsing Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT Nearables
 
Swipe Left for NativeScript
Swipe Left for NativeScriptSwipe Left for NativeScript
Swipe Left for NativeScript
 
Angular 2 and NativeScript
Angular 2 and NativeScriptAngular 2 and NativeScript
Angular 2 and NativeScript
 
Crafting an Adventure: The Azure Maya Mystery
Crafting an Adventure: The Azure Maya MysteryCrafting an Adventure: The Azure Maya Mystery
Crafting an Adventure: The Azure Maya Mystery
 
Re-Building a Tech Community - Post Pandemic!
Re-Building a Tech Community - Post Pandemic!Re-Building a Tech Community - Post Pandemic!
Re-Building a Tech Community - Post Pandemic!
 
Building a Tech Community in Ten Easy Steps
Building a Tech Community in Ten Easy StepsBuilding a Tech Community in Ten Easy Steps
Building a Tech Community in Ten Easy Steps
 
Becoming a Green Developer
Becoming a Green DeveloperBecoming a Green Developer
Becoming a Green Developer
 
Azure Static Web Apps
Azure Static Web AppsAzure Static Web Apps
Azure Static Web Apps
 
Creating a Great Workshop
Creating a Great WorkshopCreating a Great Workshop
Creating a Great Workshop
 
The Ethics of Generative AI: A Humanist's Guide
The Ethics of Generative AI: A Humanist's GuideThe Ethics of Generative AI: A Humanist's Guide
The Ethics of Generative AI: A Humanist's Guide
 
Zero to Hipster with the M.I.K.E. Stack
Zero to Hipster with the M.I.K.E. StackZero to Hipster with the M.I.K.E. Stack
Zero to Hipster with the M.I.K.E. Stack
 

Recently uploaded

Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Recently uploaded (20)

Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

Create a Mobile App in 45 Minutes with AppBuilder

  • 1. AppBuilder in 45 Minutes Jen Looper
  • 2. Jen Looper Developer Advocate, Telerik @jenlooper
  • 3. I <3 mobile apps
  • 4. So, you want to create mobile apps too.
  • 5. Stop the madness! Use your web skills to create a cross-platform hybrid mobile app
  • 7. Telerik AppBuilder can help! Why you'll love Hybrid • True single Codebase for all platforms • Ease of HTM5/CSS/JavaScript • Access to Native APIs • App Store presence & monetization • Users cannot tell the difference
  • 8. AppBuilder under the covers • Uses Apache Cordova • JavaScript proxies to native APIs
  • 9. AppBuilder is… Cross-Platform Mobile Development, simplified! • Developer freedom! • End-to-End tooling • All the backend services you need
  • 10. Your Coding Environment – up to you!
  • 11. Visual Studio Extension Use your favorite IDE to build Sublime Text Plugin
  • 12. Windows Desktop Client Rich Desktop Options
  • 13. The Telerik Platform: platform.telerik.com In-Browser client
  • 14. CLI
  • 15. Create an app using the in-browser AppBuilder Platform in 4 easy steps 1. Create an account at https://platform.telerik.com and sign in
  • 16. Create an app using the in-browser AppBuilder Platform in 4 easy steps 2. Create an app project
  • 17. Create an app using the in-browser AppBuilder Platform in 4 easy steps 3. Create a blank app
  • 18. Create an app using the in-browser AppBuilder Platform in 4 easy steps 4. Add elements to your hybrid project
  • 20. Let’s come back later to the in-browser experience
  • 21. A different workflow 1. Start building your app with the CLI 2. Push to github 3. End up in-browser with code pulled from github
  • 22. Get started with the AppBuilder CLI $appbuilder create hybrid MySampleApp --appid com.ladeezfirstmedia.myKendoSample $cd MySampleApp $appbuilder simulate Creates a basic tabstrip app
  • 23. Try sample apps via the CLI $appbuilder sample clone facebook-api $cd facebook-api $appbuilder simulate Creates a sample facebook-powered app
  • 24. Simulate like crazy $appbuilder simulate Check out your app on all kinds of phones and tablets
  • 25. Really nice tooling! $appbuilder simulate Ensure responsiveness
  • 26. Debug in the browser, track local storage, test connectivity behavior, mock geolocation $appbuilder simulate Leverage Chrome devtools – use what you already know!
  • 27. Test your app in a native emulator $appbuilder emulate ios Or $appbuilder emulate android Or $appbuilder emulate wp8 Get a closer idea of how your app will behave on various platforms
  • 28. Test your app on device $appbuilder build ios –companion Creates a QR code locally for you to test on your phone using the installed Companion App It’s on my iPhone!
  • 29. Test outside the companion app First, get your provisioning sorted out $appbuilder certificate import $appbuilder provision import Then, build for device using your app’s provisioning profile: $appbuilder build ios –my-apps-provisioning-profile Apps in progress
  • 30. Magic stuff: livesync for fast debugging Livesync three ways: 1. On AppBuilder Companion App (3 finger gesture) 2. On built app on device (same) 3. In Simulator (automatically!) Make changes and view quickly without needing to rebuild
  • 31. One more thing… Make apps the way you want.
  • 33. Let’s create a TriviaCrack Clone using Telerik AppBuilder
  • 34. Requirements for “QuizSlam”: 1. Integration with content – we’ll use Quizlet 2. Ability to choose quiz from Quizlet 3. Game Loop – spin to get random number, show 1 question and 4 possible answers, handle correct/incorrect, scorekeeping 4. Navigation – 5 sections 5. Chat (chat button) - TBD 6. Lists of friends with scores (friends button) - TBD 7. Saving Scores (scores button) – entails login and backend integration
  • 36. Disclaimer! This is just one way to build an app in AppBuilder. Do what works for you!
  • 37. 1. Start with the secret sauce! Seed code with: • styles set to my liking • colors ready • fonts installed, • two sample navigation strategies, • optional login code available • modularized code using require.js Tabstrip navigation Drawer navigation available https://github.com/jlooper/Kendo-Seed
  • 38. 2. Adjust colors and set navigation MaterialPalettte.com Tabs Drawer
  • 39. Navigation code <footer data-role="footer"> <div data-role="tabstrip"> <a href="#new"><div class="icon home"></div></a> <a href="#chat"><div class="icon message"></div></a> <a href="#friends"><div class="icon users"></div></a> <a href="#scores"><div class="icon trophy"></div></a> <a href="#menu" data-rel="drawer"><div class="icon menu"></div></a> </div> </div> </footer> We’re going to tackle these 2 bits
  • 40. 3. Override icons and import .woff files to project Icomoon.io app
  • 41. 4a. Code structure – index.html <script src="bower_components/requirejs/require.js" data-main="main.js"></script> Include require.js
  • 42. 4b. Code structure – main.js require.config({ paths: { 'text': 'bower_components/requirejs-text/text' } }); define([ 'app' ], function (app) { … app.init(); } }); Configure require.js
  • 43. 4c. Code structure – app.js define([ 'views/New/New', 'views/Spin/Spin', 'views/Home/Home', 'views/Scores/Scores', 'views/Auth/Auth’ ], function () { var app = window.app = window.app || {}; var init = function () { app.instance = new kendo.mobile.Application( document.body, { skin: 'flat', loading: "<h1>Please wait...</h1>" } ); }; return { init: init }; }); Define required elements
  • 44. 4d. Code structure – views All views included in /views:
  • 46. 6. Quizlet integration In New.js (start screen): • set initial quiz id in localStorage • grab content of quiz from Quizlet • parse it into Q/A pairs: Data!!
  • 47. 7. Game Loop Time!!! • Spin wheel • pick a random number from quiz set • show that question and 4 possible answers • handle correct/incorrect. • Correct = allow to spin again, Incorrect = show error, stop from continuing. The fun stuff!
  • 48. Pick – Spin - Quiz
  • 49. Demo!
  • 50. 8. Add Backend 1. Add Everlive .min.js to index.html: <script src="bower_components/everlive/min/everlive.all. min.js"></script> 2. Add Login routine, show forms if token not set, otherwise show scores saved in backend 3. In platform.telerik.com, create a Backend Services project associated to your current project 4. Enable Cloud Services and User Management 5. Grab your Api keys and store them locally 6. Create an account and get a token! Now you’re logged in and can pass data around
  • 51. Login/Registration/Forgot Password Works with email services automatically triggered to handle common user administration tasks (forgot password, welcome registration) in backend – all customizable in backend
  • 52. 9. Add Scorekeeping capability Save accuracy scores to backend when user clicks ‘done’ Create a datatype in the backend called ‘Scores’ with a field called ‘Score’ to store the data var Scores = new kendo.data.DataSource({ type: "everlive", transport: { typeName: "Scores" } }); var apiKey = localStorage.getItem("apiKey"); var token = localStorage.getItem("token"); var el = new Everlive({ apiKey: apiKey, url: '//api.everlive.com/v1/', scheme: 'https', token: token }); Prep your code to pass the data
  • 53. Start posting scores! sendScore:function(e){ var score = localStorage.getItem("numCorrect")/localStorage.getItem("numAttempts") //send to backend var data = el.data('Scores'); data.get() .then(function(data){ var data = el.data('Scores'); data.create({ 'Score': score}, function(data){ alert("Score saved!") }, function(error){ alert(JSON.stringify(error)); }); }); } It’s my score
  • 54. Display your scores var data = el.data('Scores'); data.get() .then(function(data){ $("#score-list").kendoListView({ dataSource: Scores, template: kendo.template($("#score- template").html()), }); }); Grab the scores
  • 55. Display your scores <ul id="score-list" data-style="inset" data-role="listview" data-template="score-template"></ul> <script id="score-template" type="text/x-kendo-template"> <li> <div style="padding:5px"> #: kendo.toString(new Date(CreatedAt),'g')# # if (typeof(Score) !== 'undefined') { # Score - #: Score*100 #% # } # </div> </li> </script> Show them on the frontend in a Kendo template
  • 56. Voila! This content type is public, so you see everyone’s scores. You can change this by setting it to private
  • 57. 10. One more thing! Add a Plugin A sample AdMob ad setup Let’s add an AdMob ad 1. Set up an ad in AdMob 2. Add the AdMob Plugin from plugins.telerik.com 3. Add the ad to your view
  • 58. Add plugin via CLI $ appbuilder plugin add "AdMob" …or in browser
  • 59. Deploy time! Let’s move to the in-browser toolset. Migrate your codebase either by: • Committing it from your local to Github and bringing it into the Platform • Zipping your files and importing to Platform
  • 60. View your app in companion app
  • 61. Or in a built app Load up your provisioning profiles for iOS here
  • 62. Manage icons and splash screens
  • 63. Install on your device Here’s that ad
  • 64. Finally, we have an app ready for production! Publish from AppBuilder – send your app to the various stores
  • 65. There is so much more in AppBuilder! • Ask Developer Relations • Ping me! @jenlooper • Read more on TDN (developer.telerik.com) • Visit the blogs (blogs.telerik.com) • Follow us on Twitter @Telerik • Sign up for an account at platform.telerik.com It’s like an awesome smorgasbord!
  • 66. Thank you! Now roll up your sleeves and start building! Jen Looper @jenlooper Developer Advocate Telerik Developer Relations Team Evaluation: http://bit.ly/next-looper-1 No pressure!