SlideShare una empresa de Scribd logo
Miércoles de Profundización en
                                     e-business
                                     Tema : Construyendo y publicando nuestra primera
                                     App multiplataforma.

                                     Conferencista: Carlos Alonso Pérez
                                     País: España




                                          Aula Virtual: http://www.interlat.co/moodle/
www.interlat.co – info@interlat.co - http://www.facebook.com/interlat - www.twitter.com/interlat - PBX: 57(1) 658 2959 - Bogotá - Colombia
Índice de la presentación



• Planeando nuestra aplicación
• Construcción
• Publicación
• Conclusiones
Planeando nuestra aplicación


• Objetivos
• Problemas
• Soluciones
• Viabilidad
• Decisión final
Objetivo: Triunfar
¿Qué hace falta para triunfar?




                                 Y ...
Llegar a todos los públicos
Problema: La fragmentación
Fragmentación: Sistemas Operativos.
Fragmentación: Tamaño de pantalla.
Fragmentación: Método de entrada.
Fragmentación: Hardware.
Fragmentación: Errores software.
Fragmentación: Conclusión


    Equilibrio
Capacidades utilizadas
          vs

 Clientes Potenciales
Solución: Una única aplicación multiplataforma.
Estudio de la solución: Tecnologías disponibles
HTML 5. Potencia y capacidades para tu browser

Etiquetas semánticas      Multimedia y Gráficos          Comunicaciones en
     <nav> <section>            canvas 2D y 3D              tiempo real
 <header> <figure>               audio y vídeo              Notificaciones
 <footer> <article>        gráficos vectoriales (SVG)        WebSockets
         <menu>                                             Web workers

 Acceso Hardware         Funcionamiento offline
                                                        Almacenamiento local
 Filesystem   Sensores
Javascript. El lenguaje de programación de la web.

                          Object
           isFunction                              Clases y objetos

                                   prototype
  typeof
                        eval                    instanceof


    new Function()
                                     Object.isPrototypeOf()
CSS 3. Experiencia de usuario de última generación

        Selectores              Efectos en textos
                                                          Animaciones
Tipografías personalizadas    Esquinas redondeadas
                                                        Transformaciones
  Semi Transparencias        Organización en columnas
                                                           Gradientes
        Sombras               Colores personalizados
jQuery Mobile. Desarrollo móvil rápido y sencillo

    Javascript no intrusivo              Máxima compatibilidad


    Plugins            ‘write less, do more’    Ampliamente usado


              Muy ligero                 Documentación
Viabilidad técnica

           SI                         NO
• Geolocalización (GPS)     • Otros sensores
• Reproducción multimedia   • Cámara
• Sensores de movimiento    • Notificaciones
• Almacenar datos locales   • Web GL
• Acceso offline            • Alto rendimiento
           http://mobilehtml5.org/
Decisión final
Construyendo nuestra aplicación multiplataforma


• Primeros pasos
• Componentes UI
• Capacidades HTML 5
• Diseño personalizado
• Demos
Primeros pasos. El documento

    <!DOCTYPE html>
    <html>
        <head>
    <meta charset="utf-8" />
                   <title>HTML 5 Demo</title>
                   <!-- CSS -->
                   <link rel="stylesheet"
                href="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css" />
                   <!-- jQuery Core -->
                   <script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
                   <!-- jQuery Mobile -->
                   <script type="text/javascript"
                src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js">
            </script>
        </head>
        <body>
        </body>
    </html>
Primeros pasos. El viewport


<head>
....
    <meta name=”viewport”
        content=”width=device-width, initial-scale=1”>
</head>




<!-- Sin Zoom -->
<meta .... user-scalable=no”>
Primeros pasos. Estructura de la aplicación


                <body>
                    <div data-role="page">
                               <div data-role="header">
                                   <h1>Header</h1>
                               </div>
                               <div data-
                role="content">
                                   <p>Content</p>
                               </div>
                               <div data-role="footer"
                            data-position="fixed">
                                   <h4>Footer</h4>
                               </div>
                    </div>
                </body>
Componentes UI
Componentes UI.
Componentes UI
Componentes UI
Componentes UI. Menu y Toolbar

<div data-role="content">
  <ul data-role="listview">
    <li><a href="#geolocation">Geolocation API</a></li>
    <li><a href="#canvas">Canvas</a></li>
    <li><a href="#storage">Offline Storage</a></li>
  </ul>
</div>




 <div data-role="footer" data-position="fixed">
   <div data-role="navbar">     <ul>     <li><a
 href="#main-menu">Home</a></li>      <li><a
 href="#geolocation">GPS</a></li>      <li><a
 href="#canvas">Canvas</a></li>      <li><a
 href="#storage">Storage</a></li>    </ul> </div>
 </div>
Capacidades HTML5. Geolocalización
<script type="text/javascript">
  $('#geolocation').live('pageinit', function(){
   navigator.geolocation.getCurrentPosition (function(pos) {
      var lat = pos.coords.latitude;
      var lng = pos.coords.longitude;
      ... Lógica de invocación del mapa Google ...
</script>




<div data-role="page" id="geolocation" data-add-back-btn="true">
  ... Header ...   <div data-role="content">   <p>Wait for the map...</p>
</div>
  ... Footer ...</div>
Capacidades HTML5. Canvas

var context = $('#theCanvas')
[0].getContext('2d');context.beginPath();context.rect(20, 20, 200, 100);
context.fillStyle = context.createLinearGradient(20, 20, 220,
120);context.fill();




<div data-role="page" id="canvas" data-add-back-btn="true">
  ... Header ...   <div data-role="content">   <canvas
id=”theCanvas”></canvas>   </div>
  ... Footer ...</div>
Capacidades HTML5. Almacenamiento de datos

var $input = $('#item');
var arr = localStorage.items ? JSON.parse(localStorage.items) :
[];arr.push($input.val());localStorage.items = JSON.stringify(arr);
... Lógica jQuery para refrescar la lista ...




<div data-role="page" id="storage" data-add-back-btn="true">
  ... Header ...   <input type="text" id="item" placeholder="Add Item..."
value=""/>   <input type="button" id="add_btn" value="Add Item" data-
icon="plus"/>   <ol data-role="listview" data-inset="true"></ol>
  ... Footer ...</div>
Diseño personalizado.


• CSS
• jQuery Theme Roller
• Fireworks Theme editor
<head>
...
<link rel="stylesheet"
 href="css/custom_css.min.css" />
...
</head>
Demos
Publicando nuestra aplicación multiplataforma




• Como aplicación nativa
• Como aplicación híbrida
• Como aplicación web
Como aplicación nativa




                         ...   ...
Como aplicación híbrida




                          ...   ...
Como aplicación web. Instalación

<head>

...

<link rel="apple-touch-icon" href="icons/icon57.png" sizes="57x57">
<link rel="apple-touch-icon" href="icons/icon114.png" sizes="114x114">
<link rel="apple-touch-icon" href="icons/icon72.png" sizes="72x72">
<link rel="apple-touch-icon" href="icons/icon80.png" sizes="80x80" >
<link rel="apple-touch-icon-precomposed" href="icons/icon57.png" sizes="android-only">

...

</head>
Como aplicación web. Funcionamiento offline


 CACHE MANIFEST:
 # version 1.0

 # Archivos jQuery
 http://code.jquery.com/jquery-1.6.1.min.js
                                                               <html manifest="offline.appcache">
 http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css
 http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js    ...
 ...

 # Archivos de la aplicación
                                                               </html>
 icons/*

 NETWORK:
 # Archivos que no se deben cachear
Conclusión




        Buena solución, pero no definitiva.
Carlos Alonso Pérez
                                                     Senior Developer - Unkasoft
                                                     calonso@unkasoft.com
                                                     Twitter: @calonso
                                                     http://www.linkedin.com/in/calonsoperez


                                                                                                           Gracias!
                                          Aula Virtual: http://www.interlat.co/moodle/
www.interlat.co – info@interlat.co - http://www.facebook.com/interlat - www.twitter.com/interlat - PBX: 57(1) 658 2959 - Bogotá - Colombia

Más contenido relacionado

Destacado

Tengo el orgullo de ser peruano
Tengo el orgullo de ser peruanoTengo el orgullo de ser peruano
Tengo el orgullo de ser peruano
diegomauriciojaimes
 
Circunferencia y círculo
Circunferencia y círculoCircunferencia y círculo
Circunferencia y círculoelenmontoya
 
mi vida por gladis navarrete
mi vida por gladis navarretemi vida por gladis navarrete
mi vida por gladis navarretegladitanava
 
Yerdelis programacion
Yerdelis programacionYerdelis programacion
Yerdelis programacionyerdelis
 

Destacado (7)

Apresentação1
Apresentação1Apresentação1
Apresentação1
 
7º ano avestruz
7º ano avestruz7º ano avestruz
7º ano avestruz
 
Tengo el orgullo de ser peruano
Tengo el orgullo de ser peruanoTengo el orgullo de ser peruano
Tengo el orgullo de ser peruano
 
Circunferencia y círculo
Circunferencia y círculoCircunferencia y círculo
Circunferencia y círculo
 
mi vida por gladis navarrete
mi vida por gladis navarretemi vida por gladis navarrete
mi vida por gladis navarrete
 
Yerdelis programacion
Yerdelis programacionYerdelis programacion
Yerdelis programacion
 
La semilla de mostaza
La semilla de mostazaLa semilla de mostaza
La semilla de mostaza
 

Similar a Webinar interlat apps_2012_carlos_a-perez_españa

Construyendo y publicando nuestra primera app multiplataforma
Construyendo y publicando nuestra primera app multiplataformaConstruyendo y publicando nuestra primera app multiplataforma
Construyendo y publicando nuestra primera app multiplataforma
Carlos Alonso Pérez
 
Phonegap
PhonegapPhonegap
Html5
Html5Html5
HTML5, CSS3 y móviles
HTML5, CSS3 y móvilesHTML5, CSS3 y móviles
HTML5, CSS3 y móviles
PideCurso
 
Introducción a Foundation 5
Introducción a Foundation 5Introducción a Foundation 5
Introducción a Foundation 5
Cycle-IT
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Facescok12v
 
Html5 y otras yerbas
Html5 y otras yerbasHtml5 y otras yerbas
Html5 y otras yerbas
Peter Concha
 
Html5 y otras yerbas
Html5 y otras yerbasHtml5 y otras yerbas
Html5 y otras yerbasAvanet
 
JQquery Mobile por Yamil Lambert
JQquery Mobile por Yamil LambertJQquery Mobile por Yamil Lambert
JQquery Mobile por Yamil Lambert
Yamil Lambert
 
Innovaciones para Internet: La visión de Mozilla
Innovaciones para Internet: La visión de MozillaInnovaciones para Internet: La visión de Mozilla
Innovaciones para Internet: La visión de Mozilla
Juan Eladio Sánchez Rosas
 
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
Microsoft Argentina y Uruguay [Official Space]
 
En 20 minutos ... Responsive Design
En 20 minutos ... Responsive DesignEn 20 minutos ... Responsive Design
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
Juan Morales
 
HTML5-Aplicaciones web
HTML5-Aplicaciones webHTML5-Aplicaciones web
HTML5-Aplicaciones web
CARLOS III UNIVERSITY OF MADRID
 
Primeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigoPrimeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigo
PHP Vigo
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red social
Roberto Luis Bisbé
 
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScriptFull-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Diego López-de-Ipiña González-de-Artaza
 
Herramientas Digitales
Herramientas DigitalesHerramientas Digitales
Herramientas Digitales
Jonnathan Carrasco
 
Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript
philogb
 

Similar a Webinar interlat apps_2012_carlos_a-perez_españa (20)

Construyendo y publicando nuestra primera app multiplataforma
Construyendo y publicando nuestra primera app multiplataformaConstruyendo y publicando nuestra primera app multiplataforma
Construyendo y publicando nuestra primera app multiplataforma
 
Phonegap
PhonegapPhonegap
Phonegap
 
Html5
Html5Html5
Html5
 
HTML5, CSS3 y móviles
HTML5, CSS3 y móvilesHTML5, CSS3 y móviles
HTML5, CSS3 y móviles
 
Mini curse
Mini curseMini curse
Mini curse
 
Introducción a Foundation 5
Introducción a Foundation 5Introducción a Foundation 5
Introducción a Foundation 5
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Faces
 
Html5 y otras yerbas
Html5 y otras yerbasHtml5 y otras yerbas
Html5 y otras yerbas
 
Html5 y otras yerbas
Html5 y otras yerbasHtml5 y otras yerbas
Html5 y otras yerbas
 
JQquery Mobile por Yamil Lambert
JQquery Mobile por Yamil LambertJQquery Mobile por Yamil Lambert
JQquery Mobile por Yamil Lambert
 
Innovaciones para Internet: La visión de Mozilla
Innovaciones para Internet: La visión de MozillaInnovaciones para Internet: La visión de Mozilla
Innovaciones para Internet: La visión de Mozilla
 
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
 
En 20 minutos ... Responsive Design
En 20 minutos ... Responsive DesignEn 20 minutos ... Responsive Design
En 20 minutos ... Responsive Design
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
HTML5-Aplicaciones web
HTML5-Aplicaciones webHTML5-Aplicaciones web
HTML5-Aplicaciones web
 
Primeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigoPrimeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigo
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red social
 
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScriptFull-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
 
Herramientas Digitales
Herramientas DigitalesHerramientas Digitales
Herramientas Digitales
 
Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript
 

Más de Community Managers Latam

Premios Social Media con los finalistas
Premios Social Media con los finalistasPremios Social Media con los finalistas
Premios Social Media con los finalistas
Community Managers Latam
 
Campaña en Twitter caso Fanta
Campaña en Twitter caso FantaCampaña en Twitter caso Fanta
Campaña en Twitter caso Fanta
Community Managers Latam
 
Twitter caso directvsports
Twitter caso directvsportsTwitter caso directvsports
Twitter caso directvsports
Community Managers Latam
 
Twitter caso chevrolet
Twitter caso chevroletTwitter caso chevrolet
Twitter caso chevrolet
Community Managers Latam
 
Mobile caso cinepolis
Mobile caso cinepolisMobile caso cinepolis
Mobile caso cinepolis
Community Managers Latam
 
Campaña Integral en redes Sociales caso caracol
Campaña Integral en redes Sociales caso caracolCampaña Integral en redes Sociales caso caracol
Campaña Integral en redes Sociales caso caracol
Community Managers Latam
 
Facebook caso pizzaninja
Facebook caso pizzaninjaFacebook caso pizzaninja
Facebook caso pizzaninja
Community Managers Latam
 
Facebook caso Colpatria
Facebook caso ColpatriaFacebook caso Colpatria
Facebook caso Colpatria
Community Managers Latam
 
Atencion clientes casoopenenglish
Atencion clientes casoopenenglishAtencion clientes casoopenenglish
Atencion clientes casoopenenglish
Community Managers Latam
 
Atencion clientes caso masmovil
Atencion clientes caso masmovilAtencion clientes caso masmovil
Atencion clientes caso masmovil
Community Managers Latam
 
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
Community Managers Latam
 
Casos de éxito en el Social Media con Pablo DI Meglio
Casos de éxito en el Social Media con Pablo DI MeglioCasos de éxito en el Social Media con Pablo DI Meglio
Casos de éxito en el Social Media con Pablo DI Meglio
Community Managers Latam
 
congreso community managers Social Media
congreso community managers Social Media congreso community managers Social Media
congreso community managers Social Media
Community Managers Latam
 
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
Community Managers Latam
 
#WebinarInterlat: Elección de plataformas para desarrollo de una app
#WebinarInterlat: Elección de plataformas para desarrollo de una app#WebinarInterlat: Elección de plataformas para desarrollo de una app
#WebinarInterlat: Elección de plataformas para desarrollo de una app
Community Managers Latam
 
Presentación congreso Community Manager de CMLatam 2012
Presentación congreso Community Manager de CMLatam 2012Presentación congreso Community Manager de CMLatam 2012
Presentación congreso Community Manager de CMLatam 2012
Community Managers Latam
 

Más de Community Managers Latam (16)

Premios Social Media con los finalistas
Premios Social Media con los finalistasPremios Social Media con los finalistas
Premios Social Media con los finalistas
 
Campaña en Twitter caso Fanta
Campaña en Twitter caso FantaCampaña en Twitter caso Fanta
Campaña en Twitter caso Fanta
 
Twitter caso directvsports
Twitter caso directvsportsTwitter caso directvsports
Twitter caso directvsports
 
Twitter caso chevrolet
Twitter caso chevroletTwitter caso chevrolet
Twitter caso chevrolet
 
Mobile caso cinepolis
Mobile caso cinepolisMobile caso cinepolis
Mobile caso cinepolis
 
Campaña Integral en redes Sociales caso caracol
Campaña Integral en redes Sociales caso caracolCampaña Integral en redes Sociales caso caracol
Campaña Integral en redes Sociales caso caracol
 
Facebook caso pizzaninja
Facebook caso pizzaninjaFacebook caso pizzaninja
Facebook caso pizzaninja
 
Facebook caso Colpatria
Facebook caso ColpatriaFacebook caso Colpatria
Facebook caso Colpatria
 
Atencion clientes casoopenenglish
Atencion clientes casoopenenglishAtencion clientes casoopenenglish
Atencion clientes casoopenenglish
 
Atencion clientes caso masmovil
Atencion clientes caso masmovilAtencion clientes caso masmovil
Atencion clientes caso masmovil
 
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
programacion academica diplomatura desarrollo aplicaciones moviles-virtual 2012
 
Casos de éxito en el Social Media con Pablo DI Meglio
Casos de éxito en el Social Media con Pablo DI MeglioCasos de éxito en el Social Media con Pablo DI Meglio
Casos de éxito en el Social Media con Pablo DI Meglio
 
congreso community managers Social Media
congreso community managers Social Media congreso community managers Social Media
congreso community managers Social Media
 
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
#WebinarsInterlat: ¿Qué hacer antes de iniciar a programar tu idea de app? co...
 
#WebinarInterlat: Elección de plataformas para desarrollo de una app
#WebinarInterlat: Elección de plataformas para desarrollo de una app#WebinarInterlat: Elección de plataformas para desarrollo de una app
#WebinarInterlat: Elección de plataformas para desarrollo de una app
 
Presentación congreso Community Manager de CMLatam 2012
Presentación congreso Community Manager de CMLatam 2012Presentación congreso Community Manager de CMLatam 2012
Presentación congreso Community Manager de CMLatam 2012
 

Último

RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTALRESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
dorislilianagarb
 
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
Anna Lucia Alfaro Dardón - Ana Lucía Alfaro
 
Valor que revierte al vendedor de la mercadería exportada
Valor que revierte al vendedor de la mercadería exportadaValor que revierte al vendedor de la mercadería exportada
Valor que revierte al vendedor de la mercadería exportada
Instituto de Capacitacion Aduanera
 
niif 15 ejemplos esenciales para su entendimiento
niif 15 ejemplos esenciales para su entendimientoniif 15 ejemplos esenciales para su entendimiento
niif 15 ejemplos esenciales para su entendimiento
crimaldonado
 
Trigonometria Plan-el mejor.pptxssssssss
Trigonometria Plan-el mejor.pptxssssssssTrigonometria Plan-el mejor.pptxssssssss
Trigonometria Plan-el mejor.pptxssssssss
QuerubinOlayamedina
 
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
erikamontano663
 
STEEPLE/PESTEL - Análisis de cada Factor
STEEPLE/PESTEL - Análisis de cada FactorSTEEPLE/PESTEL - Análisis de cada Factor
STEEPLE/PESTEL - Análisis de cada Factor
bauldecuentosec
 
SMEs as Backbone of the Economies, INCAE Business Review 2010
SMEs as Backbone of the Economies, INCAE Business Review 2010SMEs as Backbone of the Economies, INCAE Business Review 2010
SMEs as Backbone of the Economies, INCAE Business Review 2010
Anna Lucia Alfaro Dardón - Ana Lucía Alfaro
 
Solicitud de cambio de un producto, a nivel empresarial.
Solicitud de cambio de un producto, a nivel empresarial.Solicitud de cambio de un producto, a nivel empresarial.
Solicitud de cambio de un producto, a nivel empresarial.
femayormisleidys
 
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESAMODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
PETRAESPINOZASALAZAR1
 
Diseño Organizacional e Inteligencia Artificial
Diseño Organizacional e Inteligencia ArtificialDiseño Organizacional e Inteligencia Artificial
Diseño Organizacional e Inteligencia Artificial
Israel Alcazar
 
DDF Luis GIl Diagrama de flujo (1).pptx
DDF Luis GIl Diagrama de flujo  (1).pptxDDF Luis GIl Diagrama de flujo  (1).pptx
DDF Luis GIl Diagrama de flujo (1).pptx
giltoledoluis123
 
Capacitación chatbot Wapi para enviar por whatsapp
Capacitación chatbot Wapi para enviar por whatsappCapacitación chatbot Wapi para enviar por whatsapp
Capacitación chatbot Wapi para enviar por whatsapp
acastropu
 
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANOMICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
sergioandreslozanogi
 
Supply Chain Management Universidad César Vallejo
Supply Chain Management Universidad César VallejoSupply Chain Management Universidad César Vallejo
Supply Chain Management Universidad César Vallejo
jeuzouu
 
MODELO CONS1 NOTA1.pptx.....................................................
MODELO CONS1 NOTA1.pptx.....................................................MODELO CONS1 NOTA1.pptx.....................................................
MODELO CONS1 NOTA1.pptx.....................................................
75254036
 
Guía para hacer un Plan de Negocio para tu emprendimiento.pdf
Guía para hacer un Plan de Negocio para tu emprendimiento.pdfGuía para hacer un Plan de Negocio para tu emprendimiento.pdf
Guía para hacer un Plan de Negocio para tu emprendimiento.pdf
pppilarparedespampin
 
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIACATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
Fernando Tellado
 
Presentación Óxido Cuproso Nordox 75 WG.pptx
Presentación Óxido Cuproso Nordox 75 WG.pptxPresentación Óxido Cuproso Nordox 75 WG.pptx
Presentación Óxido Cuproso Nordox 75 WG.pptx
endophytsanidad
 
Enfoque Estructuralista de la Administración.docx
Enfoque Estructuralista de la Administración.docxEnfoque Estructuralista de la Administración.docx
Enfoque Estructuralista de la Administración.docx
mariferbonilla2
 

Último (20)

RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTALRESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
RESPUESTA DERECHO DE PETICION EN PROPIEDAD HORIZONTAL
 
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
BANRURAL S.A Case Study, Guatemala. INCAE Business Review, 2010.
 
Valor que revierte al vendedor de la mercadería exportada
Valor que revierte al vendedor de la mercadería exportadaValor que revierte al vendedor de la mercadería exportada
Valor que revierte al vendedor de la mercadería exportada
 
niif 15 ejemplos esenciales para su entendimiento
niif 15 ejemplos esenciales para su entendimientoniif 15 ejemplos esenciales para su entendimiento
niif 15 ejemplos esenciales para su entendimiento
 
Trigonometria Plan-el mejor.pptxssssssss
Trigonometria Plan-el mejor.pptxssssssssTrigonometria Plan-el mejor.pptxssssssss
Trigonometria Plan-el mejor.pptxssssssss
 
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
9° TEMA 5 - EVOLUCIÓN BIOLÓGICA Y GEOLÓGICA DE LA TIERRA (1).pdf
 
STEEPLE/PESTEL - Análisis de cada Factor
STEEPLE/PESTEL - Análisis de cada FactorSTEEPLE/PESTEL - Análisis de cada Factor
STEEPLE/PESTEL - Análisis de cada Factor
 
SMEs as Backbone of the Economies, INCAE Business Review 2010
SMEs as Backbone of the Economies, INCAE Business Review 2010SMEs as Backbone of the Economies, INCAE Business Review 2010
SMEs as Backbone of the Economies, INCAE Business Review 2010
 
Solicitud de cambio de un producto, a nivel empresarial.
Solicitud de cambio de un producto, a nivel empresarial.Solicitud de cambio de un producto, a nivel empresarial.
Solicitud de cambio de un producto, a nivel empresarial.
 
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESAMODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
MODELO DE REGLAMENTO INTERNO DE TRABAJO DE UNA EMPRESA
 
Diseño Organizacional e Inteligencia Artificial
Diseño Organizacional e Inteligencia ArtificialDiseño Organizacional e Inteligencia Artificial
Diseño Organizacional e Inteligencia Artificial
 
DDF Luis GIl Diagrama de flujo (1).pptx
DDF Luis GIl Diagrama de flujo  (1).pptxDDF Luis GIl Diagrama de flujo  (1).pptx
DDF Luis GIl Diagrama de flujo (1).pptx
 
Capacitación chatbot Wapi para enviar por whatsapp
Capacitación chatbot Wapi para enviar por whatsappCapacitación chatbot Wapi para enviar por whatsapp
Capacitación chatbot Wapi para enviar por whatsapp
 
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANOMICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
MICRO BIT, LUCES Y CÓDIGOS. SERGIO LOZANO
 
Supply Chain Management Universidad César Vallejo
Supply Chain Management Universidad César VallejoSupply Chain Management Universidad César Vallejo
Supply Chain Management Universidad César Vallejo
 
MODELO CONS1 NOTA1.pptx.....................................................
MODELO CONS1 NOTA1.pptx.....................................................MODELO CONS1 NOTA1.pptx.....................................................
MODELO CONS1 NOTA1.pptx.....................................................
 
Guía para hacer un Plan de Negocio para tu emprendimiento.pdf
Guía para hacer un Plan de Negocio para tu emprendimiento.pdfGuía para hacer un Plan de Negocio para tu emprendimiento.pdf
Guía para hacer un Plan de Negocio para tu emprendimiento.pdf
 
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIACATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
CATALOGO 2024 ABRATOOLS - ABRASIVOS Y MAQUINTARIA
 
Presentación Óxido Cuproso Nordox 75 WG.pptx
Presentación Óxido Cuproso Nordox 75 WG.pptxPresentación Óxido Cuproso Nordox 75 WG.pptx
Presentación Óxido Cuproso Nordox 75 WG.pptx
 
Enfoque Estructuralista de la Administración.docx
Enfoque Estructuralista de la Administración.docxEnfoque Estructuralista de la Administración.docx
Enfoque Estructuralista de la Administración.docx
 

Webinar interlat apps_2012_carlos_a-perez_españa

  • 1. Miércoles de Profundización en e-business Tema : Construyendo y publicando nuestra primera App multiplataforma. Conferencista: Carlos Alonso Pérez País: España Aula Virtual: http://www.interlat.co/moodle/ www.interlat.co – info@interlat.co - http://www.facebook.com/interlat - www.twitter.com/interlat - PBX: 57(1) 658 2959 - Bogotá - Colombia
  • 2. Índice de la presentación • Planeando nuestra aplicación • Construcción • Publicación • Conclusiones
  • 3. Planeando nuestra aplicación • Objetivos • Problemas • Soluciones • Viabilidad • Decisión final
  • 5. ¿Qué hace falta para triunfar? Y ...
  • 6. Llegar a todos los públicos
  • 13. Fragmentación: Conclusión Equilibrio Capacidades utilizadas vs Clientes Potenciales
  • 14. Solución: Una única aplicación multiplataforma.
  • 15. Estudio de la solución: Tecnologías disponibles
  • 16. HTML 5. Potencia y capacidades para tu browser Etiquetas semánticas Multimedia y Gráficos Comunicaciones en <nav> <section> canvas 2D y 3D tiempo real <header> <figure> audio y vídeo Notificaciones <footer> <article> gráficos vectoriales (SVG) WebSockets <menu> Web workers Acceso Hardware Funcionamiento offline Almacenamiento local Filesystem Sensores
  • 17. Javascript. El lenguaje de programación de la web. Object isFunction Clases y objetos prototype typeof eval instanceof new Function() Object.isPrototypeOf()
  • 18. CSS 3. Experiencia de usuario de última generación Selectores Efectos en textos Animaciones Tipografías personalizadas Esquinas redondeadas Transformaciones Semi Transparencias Organización en columnas Gradientes Sombras Colores personalizados
  • 19. jQuery Mobile. Desarrollo móvil rápido y sencillo Javascript no intrusivo Máxima compatibilidad Plugins ‘write less, do more’ Ampliamente usado Muy ligero Documentación
  • 20. Viabilidad técnica SI NO • Geolocalización (GPS) • Otros sensores • Reproducción multimedia • Cámara • Sensores de movimiento • Notificaciones • Almacenar datos locales • Web GL • Acceso offline • Alto rendimiento http://mobilehtml5.org/
  • 22. Construyendo nuestra aplicación multiplataforma • Primeros pasos • Componentes UI • Capacidades HTML 5 • Diseño personalizado • Demos
  • 23. Primeros pasos. El documento <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>HTML 5 Demo</title> <!-- CSS --> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css" /> <!-- jQuery Core --> <script src="http://code.jquery.com/jquery-1.6.4.min.js"></script> <!-- jQuery Mobile --> <script type="text/javascript" src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js"> </script> </head> <body> </body> </html>
  • 24. Primeros pasos. El viewport <head> .... <meta name=”viewport” content=”width=device-width, initial-scale=1”> </head> <!-- Sin Zoom --> <meta .... user-scalable=no”>
  • 25. Primeros pasos. Estructura de la aplicación <body> <div data-role="page"> <div data-role="header"> <h1>Header</h1> </div> <div data- role="content"> <p>Content</p> </div> <div data-role="footer" data-position="fixed"> <h4>Footer</h4> </div> </div> </body>
  • 30. Componentes UI. Menu y Toolbar <div data-role="content"> <ul data-role="listview"> <li><a href="#geolocation">Geolocation API</a></li> <li><a href="#canvas">Canvas</a></li> <li><a href="#storage">Offline Storage</a></li> </ul> </div> <div data-role="footer" data-position="fixed"> <div data-role="navbar"> <ul> <li><a href="#main-menu">Home</a></li> <li><a href="#geolocation">GPS</a></li> <li><a href="#canvas">Canvas</a></li> <li><a href="#storage">Storage</a></li> </ul> </div> </div>
  • 31. Capacidades HTML5. Geolocalización <script type="text/javascript"> $('#geolocation').live('pageinit', function(){ navigator.geolocation.getCurrentPosition (function(pos) { var lat = pos.coords.latitude; var lng = pos.coords.longitude; ... Lógica de invocación del mapa Google ... </script> <div data-role="page" id="geolocation" data-add-back-btn="true"> ... Header ... <div data-role="content"> <p>Wait for the map...</p> </div> ... Footer ...</div>
  • 32. Capacidades HTML5. Canvas var context = $('#theCanvas') [0].getContext('2d');context.beginPath();context.rect(20, 20, 200, 100); context.fillStyle = context.createLinearGradient(20, 20, 220, 120);context.fill(); <div data-role="page" id="canvas" data-add-back-btn="true"> ... Header ... <div data-role="content"> <canvas id=”theCanvas”></canvas> </div> ... Footer ...</div>
  • 33. Capacidades HTML5. Almacenamiento de datos var $input = $('#item'); var arr = localStorage.items ? JSON.parse(localStorage.items) : [];arr.push($input.val());localStorage.items = JSON.stringify(arr); ... Lógica jQuery para refrescar la lista ... <div data-role="page" id="storage" data-add-back-btn="true"> ... Header ... <input type="text" id="item" placeholder="Add Item..." value=""/> <input type="button" id="add_btn" value="Add Item" data- icon="plus"/> <ol data-role="listview" data-inset="true"></ol> ... Footer ...</div>
  • 34. Diseño personalizado. • CSS • jQuery Theme Roller • Fireworks Theme editor <head> ... <link rel="stylesheet" href="css/custom_css.min.css" /> ... </head>
  • 35. Demos
  • 36. Publicando nuestra aplicación multiplataforma • Como aplicación nativa • Como aplicación híbrida • Como aplicación web
  • 39. Como aplicación web. Instalación <head> ... <link rel="apple-touch-icon" href="icons/icon57.png" sizes="57x57"> <link rel="apple-touch-icon" href="icons/icon114.png" sizes="114x114"> <link rel="apple-touch-icon" href="icons/icon72.png" sizes="72x72"> <link rel="apple-touch-icon" href="icons/icon80.png" sizes="80x80" > <link rel="apple-touch-icon-precomposed" href="icons/icon57.png" sizes="android-only"> ... </head>
  • 40. Como aplicación web. Funcionamiento offline CACHE MANIFEST: # version 1.0 # Archivos jQuery http://code.jquery.com/jquery-1.6.1.min.js <html manifest="offline.appcache"> http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js ... ... # Archivos de la aplicación </html> icons/* NETWORK: # Archivos que no se deben cachear
  • 41. Conclusión Buena solución, pero no definitiva.
  • 42. Carlos Alonso Pérez Senior Developer - Unkasoft calonso@unkasoft.com Twitter: @calonso http://www.linkedin.com/in/calonsoperez Gracias! Aula Virtual: http://www.interlat.co/moodle/ www.interlat.co – info@interlat.co - http://www.facebook.com/interlat - www.twitter.com/interlat - PBX: 57(1) 658 2959 - Bogotá - Colombia