Desarrollo de apps
@ivanbtrujillo
Ionic
Framework HTML5 para el desarrollo de aplicaciones híbridas basado en Angular.JS.
Apache Cordova
Conjunto de APIS que permiten acceder a las características nativas de los dispositivos desde javascript.
Integración
Ionic funciona sobre Angular.JS y utiliza el data-binding para mantener la vista actualizada según va trabajando el controlador.
Módulos - Controladores - Directivas - Filtros
Podemos utilizar módulos de terceros para Angular en Ionic
NG-Cordova
NG-Cordova permite acceder a los plugins de cordova desde Angular.JS, añadiéndolos como dependencias a los módulos.
Requisitos para desarrollar la parte WEB
- Instalar node.js (NPM)
- Ionic y Git: npm install -g ionic git
- Editor de texto (Atom, Sublime, Vim, etc ..)
- Navegador Web con soporte HTML5 (preferiblemente Chrome)
Requisitos para compilar
- Apache cordova: npm install -g cordova
- IOS: Xcode + ios simulator (npm install -g ios-sim)
- Android: Android SDK + Java JDK
Apache ant (brew install ant / ant.apache.org).
Debemos instalar las APIS (android sdk)
Boilerplates (Plantillas)
ionic start appname boilerplate
ionic start TLP2015 sidemenu
cd TLP2015
ionic serve
Crear una app
Vista Principal
Modal
Menú Lateral
Para lanzarla al dispositivo USB o Emulador:
ionic run android
ionic run ios
ionic emulate android
ionic emulate ios
Nuestra aplicación
Listado de nuestros clientes
- Abrir la aplicación
- Obtener datos (JSON)
- Mostrar los datos en ng-repeat
- Mapa con marcadores TLP
- Linterna
¿De dónde obtener datos?
Nuestra propia API Rest
Open Data, APIS Públicas o APis de Pago
Las rutas de nuestro menú
Archivo principal: js/app.js
URL
Abstracta o no
Vista en HTML
Controlador
Borramos todas (state y archivo vista) excepto 'app', 'app.search' y 'app.browse'
app
vistas
Entradas del menú
Clientes
Imagenes: pixabay / imgur etc
Iconos: ionicons / fontawesome
Obtener los datos
Dependencia $http
Mostrar datos del JSON
ng-repeat para iterar un JSON
Mapa
Google Maps Javascript y librería ngMap
Añadimos el módulo como dependencia en controllers.js
Controlador vacío
Mostrando el mapa
Emulador o dispositivo
ionic platform add ios / android
ionic run ios / android
ionic emulate ios / android
Linterna - Flash del dispositivo
instalar bower: npm install -g bower
instalar ngCordova: bower install ngCordova --save
El menú y la vista
app.js
linterna.html
menu.html
controllers.js
Referenciando NG-Cordova
Entre el core de Ionic y la referencia a cordova
Añadimos NGCordova como dependencia al módulo principal
app.js
Controlador
Añadimos la referencia a $cordovaFlashLight e implementamos las funciones que declaramos en los ng-click del HTML
Compilamos y ejecutamos
ionic build android
ionic run android
GRACIAS
@ivanbtrujillo
https://slides.com/ivanbtrujillo/ionictlp2015
Ionic Framework TLP 2015
By Iván BTrujillo
Ionic Framework TLP 2015
Presentación TLP 2015 Ionic Apache Cordova
- 1,974