SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Downloaden Sie, um offline zu lesen
IONIC FRAMEWORK
CREATE MOBILE APPS WITH THE WEB TECHNOLOGIES YOU LOVE
By /@Mr_Jean @DzSteve
WHAT IS IONIC FRAMEWORK
“Free and open source, Ionic offers a library of mobile-
optimized HTML, CSS and JS components, gestures, and tools
for building highly interactive apps. Built with Sass and
optimized for AngularJS.”
APACHE CORDOVA
ANGULARJS
IONIC = FRAMEWORK WITH DOCUMENTATION
CROSSWALK (ANDROID 4.0 - 4.3)
KEY FEATURES
Performance obsessed
Angular & Ionic
Native focused
Beautifully designed
A powerful CLI
Fun to learn
WHY SHOULD I USE IONIC?
Ionic enables any developer with knowledge of HTML, CSS
and JS to build mobile hybrid applications in no time.
COMING SOON: IONIC 2
“With Ionic 2, we've gone back to square one and completely
rethought how a mobile toolkit should work.”
ECOSYSTEM
More than code. Ionic is an ecosystem.
1. IONIC LAB WEB
Build and test iOS and Android versions side-by-side. See
changes instantly.
$ ionic serve --lab
2. LIVERELOAD
Instantly update your apps with code changes, even when
running directly on your device.
$ ionic run --livereload
3. ICON/SPLASH GENERATION
Generate icons and splash screens for all devices and device
sizes with a single command.
$ ionic resources
4. VIEW APP
Share your Ionic apps with clients, customers, and testers all
around the world. All without ever going through the App
Store!
5. ngCordova
Angular extensions for easily accessing the full native
functionality of the device.
6. IONIC.IO PLATFORM
Full-stack backend services and tools for your Ionic app.
Finally, a service that embraces mobile web dev!
Push
Analytics
Deploy
Users
Creator
Lab
Market
7. IONIC LAB
Lab harnesses the power of the Ionic CLI through an intuitive
desktop app for both Windows and Mac.
8. IONIC CREATOR
Creator is a drag-&-drop prototyping tool for creating great
apps using Ionic, with just a click of the mouse.
HOW TO SETUP IONIC FRAMEWORK
1. Install Ionic
2. Start a project
3. Run it
1. INSTALL IONIC
Make sure you have NodeJS installed
Install Cordova and Ionic
Install Android Studio
Install XCode for Mac
On Mac, install ios-sim
Follow the Android and iOS platform guides to install
required platform dependencies.
$ npm -g install cordova ionic
$ npm -g install ios-sim
2. START A PROJECT
You have three options here:
$ ionic start todoApp blank
$ ionic start todoApp tabs
$ ionic start todoApp sidemenu
This will create a folder with all your application data in it.
3. RUN IT
Using emulation
$ cd todoApp
$ ionic platform add android
$ ionic build android
$ ionic emulate android
Using a real device
$ cd todoApp
$ ionic platform add android
$ ionic build android
$ ionic run android
Using a browser
$ cd todoApp
$ ionic serve --lab
FUNDAMENTALS
IONIC CLI
$ ionic --help
$ ionic start [myAppName] [template]
$ ionic serve
$ ionic serve -- lab
$ ionic setup sass
$ ionic serve --address 68.54.96.105
COMMAND-LINE FLAGS/OPTIONS
[--consolelogs|-c] ...... Print app console logs to Ionic CLI
[--serverlogs|-s] ....... Print dev server logs to Ionic CLI
[--port|-p] ............. Dev server HTTP port (8100 default)
[--livereload-port|-i] .. Live Reload port (35729 default)
[--nobrowser|-b] ........ Disable launching a browser
[--nolivereload|-r] ..... Do not start live reload
[--noproxy|-x] .......... Do not add proxies
ICON AND SPLASH SCREEN
Auto generate icons and splash screens for your application
Place artwork in resources folder in the root of the project
$ ionic resources
$ ionic resources --splash
$ ionic resources --icon
IONIC VIEW APP
Upload your application and preview/share it
$ ionic upload
Before upload you need an account on and the
app on your Android or iOS device. More info
apps.ionic.io
view.ionic.io
USING SASS
To enable Sass in your project, use the following command
$ ionic setup sass
This will enable you to customise different variables used in
theming and layouting the different components. These can
be found in the _variables.scss file.
See for more
information
ionicframework.com/docs/cli/sass.html
TESTING YOUR APPLICATION
For unit testing we will use
Jasmine
ngMock
Karma
PhantomJS
INSTALL DEPENDENCIES
$ npm install karma --save-dev
$ npm install karma-jasmine --save-dev
$ bower install angular-mocks#1.4.3 --save-dev
$ npm install -g karma-cli
$ npm install -g phantomjs
Attention: the version of angular-mocks needs to be the same
of the version of AngularJS used in your Ionic setup
CONFIGURATION
$ mkdir -p tests/unit-tests
$ cd tests
$ karma init unit-tests.conf.js
Hit enter for all questions except:
Do you want to capture any browsers automatically ?
Press tab to list possible options. Enter empty string to move to the next
> PhantomJS
What is the location of your source and test files ?
You can use glob patterns, eg. "js/*.js" or "test/**/*Spec.js".
Enter empty string to move to the next question.
> ../www/lib/ionic/js/ionic.bundle.js
> ../www/app.js
> ../www/lib/angular-mocks/angular-mocks.js
> ../www/projects/*.js
> unit-tests/**/*.js
WRITING TESTS
describe('ProjectsCtrl', function() {
var controller,
projectsServiceMock;
beforeEach(module('todo'));
beforeEach(inject(function($controller, $rootScope) {
scope = $rootScope.$new();
projectsServiceMock = {
getAll: jasmine.createSpy('getAll spy').and.returnValue
getLastActiveIndex: jasmine.createSpy('getAll spy').and.returnVal
};
controller = $controller('ProjectsCtrl', {
'$scope': scope,
'projectsService': projectsServiceMock
RUN TESTS
$ karma start unit-tests.conf.js
LET'S BUILD AN APPLICATION
Get yerr computers running!
DEPLOYING YOUR APP
ANDROID
Create keystore (one time only) with keytool
$ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg
Build, jarsign and zipalign
cordova build --release android
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release
./zipalign -v 4 /path/to/app/platforms/android/build/outputs/apk/android-release-
Put in Play Store
IOS
/usr/bin/xcrun -sdk iphoneos PackageApplication "/Users/NAME/Library/Developer/
No it's not that easy …
REAL LIFE CASES
At Ordina we currently have 2 real life cases.
Proximus MyThings Scanner (in app store since november)
Evonik Weather App
PROXIMUS MYTHINGS SCANNER
EVONIK
IONIC FRAMEWORK
CREATE MOBILE APPS WITH THE WEB TECHNOLOGIES YOU LOVE
By /@Mr_Jean @DzSteve

Weitere ähnliche Inhalte

Was ist angesagt?

Creating mobile apps - an introduction to Ionic (Engage 2016)
Creating mobile apps - an introduction to Ionic (Engage 2016)Creating mobile apps - an introduction to Ionic (Engage 2016)
Creating mobile apps - an introduction to Ionic (Engage 2016)Mark Leusink
 
Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3Oleksandr Tryshchenko
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSZvika Epstein
 
Cordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsCordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsEddie Lau
 
Developing Hybrid Applications with IONIC
Developing Hybrid Applications with IONICDeveloping Hybrid Applications with IONIC
Developing Hybrid Applications with IONICFuat Buğra AYDIN
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkCihad Horuzoğlu
 
Intro to Ionic for Building Hybrid Mobile Applications
Intro to Ionic for Building Hybrid Mobile ApplicationsIntro to Ionic for Building Hybrid Mobile Applications
Intro to Ionic for Building Hybrid Mobile ApplicationsSasha dos Santos
 
Introduction to Ionic framework
Introduction to Ionic frameworkIntroduction to Ionic framework
Introduction to Ionic frameworkShyjal Raazi
 
Ionic Crash Course! Hack-a-ton SF
Ionic Crash Course! Hack-a-ton SFIonic Crash Course! Hack-a-ton SF
Ionic Crash Course! Hack-a-ton SFLukas Ruebbelke
 
Intro to mobile apps with the ionic framework & angular js
Intro to mobile apps with the ionic framework & angular jsIntro to mobile apps with the ionic framework & angular js
Intro to mobile apps with the ionic framework & angular jsHector Iribarne
 
Getting started with the Ionic Framework
Getting started with the Ionic FrameworkGetting started with the Ionic Framework
Getting started with the Ionic FrameworkAnuradha Weeraman
 
Ionic CLI Adventures
Ionic CLI AdventuresIonic CLI Adventures
Ionic CLI AdventuresJuarez Filho
 
Hybrid mobile and Ionic
Hybrid mobile and IonicHybrid mobile and Ionic
Hybrid mobile and IonicLiju Pillai
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicKadhem Soltani
 
IONIC - Hybrid Mobile App Development
IONIC - Hybrid Mobile App DevelopmentIONIC - Hybrid Mobile App Development
IONIC - Hybrid Mobile App DevelopmentMalan Amarasinghe
 
Ionic Framework - Intro to Hybrid Mobile Application Development
Ionic Framework - Intro to Hybrid Mobile Application DevelopmentIonic Framework - Intro to Hybrid Mobile Application Development
Ionic Framework - Intro to Hybrid Mobile Application DevelopmentMax Kaplan
 
Ionic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsIonic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsAndreas Sahle
 
Ionic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocksIonic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocksJuarez Filho
 

Was ist angesagt? (20)

Ionic Framework
Ionic FrameworkIonic Framework
Ionic Framework
 
Creating mobile apps - an introduction to Ionic (Engage 2016)
Creating mobile apps - an introduction to Ionic (Engage 2016)Creating mobile apps - an introduction to Ionic (Engage 2016)
Creating mobile apps - an introduction to Ionic (Engage 2016)
 
Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJS
 
Cordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsCordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ Codeaholics
 
Developing Hybrid Applications with IONIC
Developing Hybrid Applications with IONICDeveloping Hybrid Applications with IONIC
Developing Hybrid Applications with IONIC
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic Framework
 
Ionic Framework
Ionic FrameworkIonic Framework
Ionic Framework
 
Intro to Ionic for Building Hybrid Mobile Applications
Intro to Ionic for Building Hybrid Mobile ApplicationsIntro to Ionic for Building Hybrid Mobile Applications
Intro to Ionic for Building Hybrid Mobile Applications
 
Introduction to Ionic framework
Introduction to Ionic frameworkIntroduction to Ionic framework
Introduction to Ionic framework
 
Ionic Crash Course! Hack-a-ton SF
Ionic Crash Course! Hack-a-ton SFIonic Crash Course! Hack-a-ton SF
Ionic Crash Course! Hack-a-ton SF
 
Intro to mobile apps with the ionic framework & angular js
Intro to mobile apps with the ionic framework & angular jsIntro to mobile apps with the ionic framework & angular js
Intro to mobile apps with the ionic framework & angular js
 
Getting started with the Ionic Framework
Getting started with the Ionic FrameworkGetting started with the Ionic Framework
Getting started with the Ionic Framework
 
Ionic CLI Adventures
Ionic CLI AdventuresIonic CLI Adventures
Ionic CLI Adventures
 
Hybrid mobile and Ionic
Hybrid mobile and IonicHybrid mobile and Ionic
Hybrid mobile and Ionic
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and Ionic
 
IONIC - Hybrid Mobile App Development
IONIC - Hybrid Mobile App DevelopmentIONIC - Hybrid Mobile App Development
IONIC - Hybrid Mobile App Development
 
Ionic Framework - Intro to Hybrid Mobile Application Development
Ionic Framework - Intro to Hybrid Mobile Application DevelopmentIonic Framework - Intro to Hybrid Mobile Application Development
Ionic Framework - Intro to Hybrid Mobile Application Development
 
Ionic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsIonic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile apps
 
Ionic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocksIonic adventures - Hybrid Mobile App Development rocks
Ionic adventures - Hybrid Mobile App Development rocks
 

Andere mochten auch

Lean UX is Haaaard
Lean UX is HaaaardLean UX is Haaaard
Lean UX is HaaaardZac Halbert
 
A Framework for Implementing Lean UX
A Framework for Implementing Lean UXA Framework for Implementing Lean UX
A Framework for Implementing Lean UXZac Halbert
 
Effective Communication Of Data Inspired by Stephen Few
Effective Communication Of Data Inspired by Stephen FewEffective Communication Of Data Inspired by Stephen Few
Effective Communication Of Data Inspired by Stephen FewCory Grenier
 
Crash Course in AngularJS + Ionic (Deep dive)
Crash Course in AngularJS + Ionic (Deep dive)Crash Course in AngularJS + Ionic (Deep dive)
Crash Course in AngularJS + Ionic (Deep dive)ColdFusionConference
 
Rethinking Mobile with Ionic
Rethinking Mobile with IonicRethinking Mobile with Ionic
Rethinking Mobile with IonicMike Hartington
 
Ionic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenIonic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenHendrik Lösch
 
Art and Science of Dashboard Design
Art and Science of Dashboard DesignArt and Science of Dashboard Design
Art and Science of Dashboard DesignSavvyData
 
Hybrid app in ionic framework overview
Hybrid app in ionic framework overviewHybrid app in ionic framework overview
Hybrid app in ionic framework overviewSanket Devlekar
 
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...Juliano Martins
 
Ionic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application DevelopmentIonic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application DevelopmentJustin James
 
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstCordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstRaymond Camden
 
Building Mobile Applications with Ionic
Building Mobile Applications with IonicBuilding Mobile Applications with Ionic
Building Mobile Applications with IonicMorris Singer
 
Scaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesScaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesLorenzo Alberton
 
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
 

Andere mochten auch (16)

Lean UX is Haaaard
Lean UX is HaaaardLean UX is Haaaard
Lean UX is Haaaard
 
Agile14 - Anatomy Of A UX Framework
Agile14 - Anatomy Of A UX FrameworkAgile14 - Anatomy Of A UX Framework
Agile14 - Anatomy Of A UX Framework
 
A Framework for Implementing Lean UX
A Framework for Implementing Lean UXA Framework for Implementing Lean UX
A Framework for Implementing Lean UX
 
Workshop 15: Ionic framework
Workshop 15: Ionic frameworkWorkshop 15: Ionic framework
Workshop 15: Ionic framework
 
Effective Communication Of Data Inspired by Stephen Few
Effective Communication Of Data Inspired by Stephen FewEffective Communication Of Data Inspired by Stephen Few
Effective Communication Of Data Inspired by Stephen Few
 
Crash Course in AngularJS + Ionic (Deep dive)
Crash Course in AngularJS + Ionic (Deep dive)Crash Course in AngularJS + Ionic (Deep dive)
Crash Course in AngularJS + Ionic (Deep dive)
 
Rethinking Mobile with Ionic
Rethinking Mobile with IonicRethinking Mobile with Ionic
Rethinking Mobile with Ionic
 
Ionic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf SteroidenIonic 2 - Hybridapps auf Steroiden
Ionic 2 - Hybridapps auf Steroiden
 
Art and Science of Dashboard Design
Art and Science of Dashboard DesignArt and Science of Dashboard Design
Art and Science of Dashboard Design
 
Hybrid app in ionic framework overview
Hybrid app in ionic framework overviewHybrid app in ionic framework overview
Hybrid app in ionic framework overview
 
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...
Desenvolvendo uma aplicação híbrida para Android e IOs utilizando Ionic, aces...
 
Ionic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application DevelopmentIonic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application Development
 
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstCordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirst
 
Building Mobile Applications with Ionic
Building Mobile Applications with IonicBuilding Mobile Applications with Ionic
Building Mobile Applications with Ionic
 
Scaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesScaling Teams, Processes and Architectures
Scaling Teams, Processes and Architectures
 
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
 

Ähnlich wie Workshop Ionic Framework - CC FE & UX

Tutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSTutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSPhilipp Burgmer
 
Angularjs Tutorial for Beginners
Angularjs Tutorial for BeginnersAngularjs Tutorial for Beginners
Angularjs Tutorial for Beginnersrajkamaltibacademy
 
Appium workship, Mobile Web+Dev Conference
Appium workship,  Mobile Web+Dev ConferenceAppium workship,  Mobile Web+Dev Conference
Appium workship, Mobile Web+Dev ConferenceIsaac Murchie
 
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
 
Appium mobile web+dev conference
Appium   mobile web+dev conferenceAppium   mobile web+dev conference
Appium mobile web+dev conferenceIsaac Murchie
 
Introdução Ionic Framework - Meetup SP
Introdução Ionic Framework - Meetup SPIntrodução Ionic Framework - Meetup SP
Introdução Ionic Framework - Meetup SPLivio Alves, MBA
 
A Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & SeleniumA Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & SeleniumJames Eisenhauer
 
Mobile development in 2020
Mobile development in 2020 Mobile development in 2020
Mobile development in 2020 Bogusz Jelinski
 
Real World ionic Development
Real World ionic DevelopmentReal World ionic Development
Real World ionic DevelopmentChris Griffith
 
selenium-2-mobile-web-testing
selenium-2-mobile-web-testingselenium-2-mobile-web-testing
selenium-2-mobile-web-testinghugs
 
Building websites with Node.ACS
Building websites with Node.ACSBuilding websites with Node.ACS
Building websites with Node.ACSralcocer
 
Building websites with Node.ACS
Building websites with Node.ACSBuilding websites with Node.ACS
Building websites with Node.ACSRicardo Alcocer
 
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Applitools
 
Appium understanding document
Appium understanding documentAppium understanding document
Appium understanding documentAkshay Pillay
 
Hybrid app development frameworks
Hybrid app development frameworksHybrid app development frameworks
Hybrid app development frameworksSquash Apps Pvt Ltd
 

Ähnlich wie Workshop Ionic Framework - CC FE & UX (20)

Tutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSTutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJS
 
Ionic
IonicIonic
Ionic
 
Ionic2 First Lesson of Four
Ionic2 First Lesson of FourIonic2 First Lesson of Four
Ionic2 First Lesson of Four
 
Angularjs Tutorial for Beginners
Angularjs Tutorial for BeginnersAngularjs Tutorial for Beginners
Angularjs Tutorial for Beginners
 
Ionic framework
Ionic frameworkIonic framework
Ionic framework
 
Appium workship, Mobile Web+Dev Conference
Appium workship,  Mobile Web+Dev ConferenceAppium workship,  Mobile Web+Dev Conference
Appium workship, Mobile Web+Dev Conference
 
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
 
Appium mobile web+dev conference
Appium   mobile web+dev conferenceAppium   mobile web+dev conference
Appium mobile web+dev conference
 
Introdução Ionic Framework - Meetup SP
Introdução Ionic Framework - Meetup SPIntrodução Ionic Framework - Meetup SP
Introdução Ionic Framework - Meetup SP
 
A Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & SeleniumA Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & Selenium
 
Mobile development in 2020
Mobile development in 2020 Mobile development in 2020
Mobile development in 2020
 
Real World ionic Development
Real World ionic DevelopmentReal World ionic Development
Real World ionic Development
 
selenium-2-mobile-web-testing
selenium-2-mobile-web-testingselenium-2-mobile-web-testing
selenium-2-mobile-web-testing
 
Building websites with Node.ACS
Building websites with Node.ACSBuilding websites with Node.ACS
Building websites with Node.ACS
 
Building websites with Node.ACS
Building websites with Node.ACSBuilding websites with Node.ACS
Building websites with Node.ACS
 
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
 
Nativescript with angular 2
Nativescript with angular 2Nativescript with angular 2
Nativescript with angular 2
 
An overview of Ionic
An overview of IonicAn overview of Ionic
An overview of Ionic
 
Appium understanding document
Appium understanding documentAppium understanding document
Appium understanding document
 
Hybrid app development frameworks
Hybrid app development frameworksHybrid app development frameworks
Hybrid app development frameworks
 

Mehr von JWORKS powered by Ordina

Introduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & WebIntroduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & WebJWORKS powered by Ordina
 
Netflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLandNetflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLandJWORKS powered by Ordina
 
Cc internet of things LoRa and IoT - Innovation Enablers
Cc internet of things   LoRa and IoT - Innovation Enablers Cc internet of things   LoRa and IoT - Innovation Enablers
Cc internet of things LoRa and IoT - Innovation Enablers JWORKS powered by Ordina
 
Big data document and graph d bs - couch-db and orientdb
Big data  document and graph d bs - couch-db and orientdbBig data  document and graph d bs - couch-db and orientdb
Big data document and graph d bs - couch-db and orientdbJWORKS powered by Ordina
 
Big data key-value and column stores redis - cassandra
Big data  key-value and column stores redis - cassandraBig data  key-value and column stores redis - cassandra
Big data key-value and column stores redis - cassandraJWORKS powered by Ordina
 
Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014JWORKS powered by Ordina
 

Mehr von JWORKS powered by Ordina (20)

Introduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & WebIntroduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & Web
 
Lagom in Practice
Lagom in PracticeLagom in Practice
Lagom in Practice
 
Netflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLandNetflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLand
 
Cc internet of things @ Thomas More
Cc internet of things @ Thomas MoreCc internet of things @ Thomas More
Cc internet of things @ Thomas More
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
An introduction to Cloud Foundry
An introduction to Cloud FoundryAn introduction to Cloud Foundry
An introduction to Cloud Foundry
 
Cc internet of things LoRa and IoT - Innovation Enablers
Cc internet of things   LoRa and IoT - Innovation Enablers Cc internet of things   LoRa and IoT - Innovation Enablers
Cc internet of things LoRa and IoT - Innovation Enablers
 
Mongodb @ vrt
Mongodb @ vrtMongodb @ vrt
Mongodb @ vrt
 
Mongo db intro.pptx
Mongo db intro.pptxMongo db intro.pptx
Mongo db intro.pptx
 
Big data document and graph d bs - couch-db and orientdb
Big data  document and graph d bs - couch-db and orientdbBig data  document and graph d bs - couch-db and orientdb
Big data document and graph d bs - couch-db and orientdb
 
Big data key-value and column stores redis - cassandra
Big data  key-value and column stores redis - cassandraBig data  key-value and column stores redis - cassandra
Big data key-value and column stores redis - cassandra
 
Hadoop bootcamp getting started
Hadoop bootcamp getting startedHadoop bootcamp getting started
Hadoop bootcamp getting started
 
Big data elasticsearch practical
Big data  elasticsearch practicalBig data  elasticsearch practical
Big data elasticsearch practical
 
Intro to cassandra
Intro to cassandraIntro to cassandra
Intro to cassandra
 
Android wear - CC Mobile
Android wear - CC MobileAndroid wear - CC Mobile
Android wear - CC Mobile
 
Clean Code - A&BP CC
Clean Code - A&BP CCClean Code - A&BP CC
Clean Code - A&BP CC
 
Unit testing - A&BP CC
Unit testing - A&BP CCUnit testing - A&BP CC
Unit testing - A&BP CC
 
Integration testing - A&BP CC
Integration testing - A&BP CCIntegration testing - A&BP CC
Integration testing - A&BP CC
 
Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014
 
Spring 4 - A&BP CC
Spring 4 - A&BP CCSpring 4 - A&BP CC
Spring 4 - A&BP CC
 

Kürzlich hochgeladen

Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 

Kürzlich hochgeladen (7)

Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 

Workshop Ionic Framework - CC FE & UX

  • 1. IONIC FRAMEWORK CREATE MOBILE APPS WITH THE WEB TECHNOLOGIES YOU LOVE By /@Mr_Jean @DzSteve
  • 2. WHAT IS IONIC FRAMEWORK “Free and open source, Ionic offers a library of mobile- optimized HTML, CSS and JS components, gestures, and tools for building highly interactive apps. Built with Sass and optimized for AngularJS.”
  • 5. IONIC = FRAMEWORK WITH DOCUMENTATION
  • 7. KEY FEATURES Performance obsessed Angular & Ionic Native focused Beautifully designed A powerful CLI Fun to learn
  • 8. WHY SHOULD I USE IONIC? Ionic enables any developer with knowledge of HTML, CSS and JS to build mobile hybrid applications in no time.
  • 9. COMING SOON: IONIC 2 “With Ionic 2, we've gone back to square one and completely rethought how a mobile toolkit should work.”
  • 10. ECOSYSTEM More than code. Ionic is an ecosystem.
  • 11. 1. IONIC LAB WEB Build and test iOS and Android versions side-by-side. See changes instantly. $ ionic serve --lab
  • 12.
  • 13. 2. LIVERELOAD Instantly update your apps with code changes, even when running directly on your device. $ ionic run --livereload
  • 14. 3. ICON/SPLASH GENERATION Generate icons and splash screens for all devices and device sizes with a single command. $ ionic resources
  • 15. 4. VIEW APP Share your Ionic apps with clients, customers, and testers all around the world. All without ever going through the App Store!
  • 16.
  • 17. 5. ngCordova Angular extensions for easily accessing the full native functionality of the device.
  • 18.
  • 19. 6. IONIC.IO PLATFORM Full-stack backend services and tools for your Ionic app. Finally, a service that embraces mobile web dev! Push Analytics Deploy Users Creator Lab Market
  • 20. 7. IONIC LAB Lab harnesses the power of the Ionic CLI through an intuitive desktop app for both Windows and Mac.
  • 21.
  • 22. 8. IONIC CREATOR Creator is a drag-&-drop prototyping tool for creating great apps using Ionic, with just a click of the mouse.
  • 23.
  • 24. HOW TO SETUP IONIC FRAMEWORK 1. Install Ionic 2. Start a project 3. Run it
  • 25. 1. INSTALL IONIC Make sure you have NodeJS installed Install Cordova and Ionic Install Android Studio Install XCode for Mac On Mac, install ios-sim Follow the Android and iOS platform guides to install required platform dependencies. $ npm -g install cordova ionic $ npm -g install ios-sim
  • 26. 2. START A PROJECT You have three options here: $ ionic start todoApp blank $ ionic start todoApp tabs $ ionic start todoApp sidemenu This will create a folder with all your application data in it.
  • 27. 3. RUN IT Using emulation $ cd todoApp $ ionic platform add android $ ionic build android $ ionic emulate android Using a real device $ cd todoApp $ ionic platform add android $ ionic build android $ ionic run android Using a browser $ cd todoApp $ ionic serve --lab
  • 29. IONIC CLI $ ionic --help $ ionic start [myAppName] [template] $ ionic serve $ ionic serve -- lab $ ionic setup sass $ ionic serve --address 68.54.96.105
  • 30. COMMAND-LINE FLAGS/OPTIONS [--consolelogs|-c] ...... Print app console logs to Ionic CLI [--serverlogs|-s] ....... Print dev server logs to Ionic CLI [--port|-p] ............. Dev server HTTP port (8100 default) [--livereload-port|-i] .. Live Reload port (35729 default) [--nobrowser|-b] ........ Disable launching a browser [--nolivereload|-r] ..... Do not start live reload [--noproxy|-x] .......... Do not add proxies
  • 31. ICON AND SPLASH SCREEN Auto generate icons and splash screens for your application Place artwork in resources folder in the root of the project $ ionic resources $ ionic resources --splash $ ionic resources --icon
  • 32. IONIC VIEW APP Upload your application and preview/share it $ ionic upload Before upload you need an account on and the app on your Android or iOS device. More info apps.ionic.io view.ionic.io
  • 33. USING SASS To enable Sass in your project, use the following command $ ionic setup sass This will enable you to customise different variables used in theming and layouting the different components. These can be found in the _variables.scss file. See for more information ionicframework.com/docs/cli/sass.html
  • 34. TESTING YOUR APPLICATION For unit testing we will use Jasmine ngMock Karma PhantomJS
  • 35. INSTALL DEPENDENCIES $ npm install karma --save-dev $ npm install karma-jasmine --save-dev $ bower install angular-mocks#1.4.3 --save-dev $ npm install -g karma-cli $ npm install -g phantomjs Attention: the version of angular-mocks needs to be the same of the version of AngularJS used in your Ionic setup
  • 36. CONFIGURATION $ mkdir -p tests/unit-tests $ cd tests $ karma init unit-tests.conf.js Hit enter for all questions except: Do you want to capture any browsers automatically ? Press tab to list possible options. Enter empty string to move to the next > PhantomJS What is the location of your source and test files ? You can use glob patterns, eg. "js/*.js" or "test/**/*Spec.js". Enter empty string to move to the next question. > ../www/lib/ionic/js/ionic.bundle.js > ../www/app.js > ../www/lib/angular-mocks/angular-mocks.js > ../www/projects/*.js > unit-tests/**/*.js
  • 37. WRITING TESTS describe('ProjectsCtrl', function() { var controller, projectsServiceMock; beforeEach(module('todo')); beforeEach(inject(function($controller, $rootScope) { scope = $rootScope.$new(); projectsServiceMock = { getAll: jasmine.createSpy('getAll spy').and.returnValue getLastActiveIndex: jasmine.createSpy('getAll spy').and.returnVal }; controller = $controller('ProjectsCtrl', { '$scope': scope, 'projectsService': projectsServiceMock
  • 38. RUN TESTS $ karma start unit-tests.conf.js
  • 39. LET'S BUILD AN APPLICATION Get yerr computers running!
  • 41. ANDROID Create keystore (one time only) with keytool $ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg Build, jarsign and zipalign cordova build --release android jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release ./zipalign -v 4 /path/to/app/platforms/android/build/outputs/apk/android-release- Put in Play Store
  • 42. IOS /usr/bin/xcrun -sdk iphoneos PackageApplication "/Users/NAME/Library/Developer/ No it's not that easy …
  • 43. REAL LIFE CASES At Ordina we currently have 2 real life cases. Proximus MyThings Scanner (in app store since november) Evonik Weather App
  • 46. IONIC FRAMEWORK CREATE MOBILE APPS WITH THE WEB TECHNOLOGIES YOU LOVE By /@Mr_Jean @DzSteve