Curso PhoneGap
Curso PhoneGap
Curso PhoneGap
1
c. CSS3 ________________________________________________________________ 10
i. ¿Qué es CSS3 y para qué sirve? _________________________________________________ 10
ii. Estructura de un fichero CSS3 __________________________________________________ 10
iii. Responsive Design o Web Adaptativa ____________________________________________ 11
d. JavaScript ____________________________________________________________ 11
i. ¿Qué es JavaScript y para qué sirve? ____________________________________________ 11
ii. ¿Cómo utilizar JavaScript para PhoneGap?________________________________________ 12
iii. AJAX ______________________________________________________________________ 12
iv. Frameworks que podemos utilizar ______________________________________________ 12
9. Consejos para poder desarrollar una app con movimientos fluidos _________ 16
a. Errores de Diseño _____________________________________________________ 16
b. Herramientas Online para nuestro propio CSS_______________________________ 16
c. Sprites ______________________________________________________________ 17
i. ¿Qué es sprite y para qué sirve? ________________________________________________ 17
ii. Herramientas online para crear tu sprite _________________________________________ 17
2
a. Compilar nuestro proyecto con Eclipse ____________________________________ 20
b. Instalar en el emulador _________________________________________________ 20
c. Subir al PlayStore______________________________________________________ 20
3
1. ¿Qué es y para qué sirve PhoneGap?
a. ¿Qué es PhoneGap?
c. Tipos de aplicaciones
Para entenderlo mejor, veamos los tres tipos de aplicaciones móviles que
existen:
4
principal ventaja es que a pesar de estar desarrollada con HTML, CSS y
JavaScript, es posible agrupar los códigos y distribuirla en las tiendas
móviles.
2. Licencia y coste
Android
iOS
5
WindowsPhone
Blackberry
Symbian OS (que es de Nokia)
Bada (que es un SO de Samsung)
WebOS (que es un SO que saco HP para algunos móviles en concreto)
Ubuntu Mobile
Firefox OS
Actualmente el mercado está liderado por Android (62%) y iOS (23%) con un
85% aproximadamente.
a. ¿Qué es un IDE?
6
b. Principales IDES y sus costes
Video de demostración
7
b. Comandos para instalar PhoneGap sin Eclipse
b. Punto estratégico
¿Por qué? porque el mismo usuario lo ha ido pidiendo por usabilidad y tema
de accesibilidad.
c. Puntos básicos
i. Accesibilidad
Es el grado en el que todas las personas pueden utilizar un objeto,
independientemente de sus capacidades técnicas, cognitivas o físicas.
8
ii. Usabilidad
La facilidad con que las personas pueden utilizar una herramienta y la
eficacia percibida mediante ésta.
iii. Jugabilidad
Satisfacción, Aprendizaje, Efectividad, Inmersión, Motivación,
Emoción y Socialización.
iv. Interactividad
Es la interacción a modo de diálogo entre la app y el usuario.
b. HTML5
Podríamos decir que HTML sirve para crear páginas web, darles
estructura y contenido.
9
En HEAD se define el título, icono, estilos, scripts, y otras meta
informaciones.
BODY define el cuerpo del document. En ella contiene todos
los elementos tales como texto, hipervínculos, imágenes,
tablas, listas, etc.
c. CSS3
Por decirlo de alguna manera: la página web sería lo que hay debajo (el
contenido) y CSS sería un cristal de color que hace que el contenido se
vea de una forma u otra.
10
La pseudo clase hover aplica las propiedades indicadas dentro
de su etiqueta cuando pase el ratón por encima del elemento.
d. JavaScript
11
Sirve principalmente para crear páginas web dinámicas o dicho de otra
forma, para programar el comportamiento de las páginas web.
Organización
Simplificación
iii. AJAX
AJAX (Asynchronous JavaScript And XML), es una técnica de desarrollo
web para crear aplicaciones interactivas. De esta forma es posible
realizar cambios sobre las páginas sin necesidad de recargarlas,
mejorando la interactividad, velocidad y usabilidad en las aplicaciones.
1. XUI
Es un framework preparado para trabajar en navegadores
basados en WebKit, Fennec, Opera, IE Mobile y Blackberry.
12
2. JQuery
jQuery es una biblioteca de JavaScript, que permite
simplificar la manera de interactuar con los documentos
HTML, manipular el árbol DOM, manejar eventos, desarrollar
animaciones y agregar interacción con la técnica AJAX a
páginas web.
3. jQuery Mobile
JQuery Mobile es un plugin del JQuery original optimizado
para dispositivos táctiles y requiere que éste último esté
instalado previamente para poder funcionar.
Contras
13
8. Principios para entender la maquetación web con código
HTML5 y CSS3 orientado a una app
14
c. Nº de secciones
Figura 8. Nº de secciones
15
Figura 10. Estructura Media Queries
a. Errores de Diseño
No abusar de tipografías.
No abusar de los bordes redondeados con CSS.
No abusar de las sombras de CSS.
No abusar de los degradados del CSS.
No utilizar animaciones de JavaScript.
Nuestras imágenes e iconos deben valer para todas las resoluciones.
Tratar las imágenes mediante un editor para reducir y ajustar tamaños.
css3generator.com
colorzilla.com/gradient-editor
border-radius.com
css3.me
css-tricks.com/examples/ButtonMaker
3dcsstext.com
16
c. Sprites
El proceso es el siguiente:
Muevo la capa.
Muestro el cargando.
Y después quito el cargando y muestro el contenido.
e. Cargas asíncronas
17
f. Animaciones mediante CSS3
18
Camera: utiliza el módulo de cámara para tomar imágenes o videos.
Capture: aparte de capturar una foto, un audio o un video, puede
enviarlo directamente a un servidor.
Compass: accede al sensor de la brújula para indicarnos la dirección en
la que está apuntando el dispositivo.
Connection: indica el tipo de conexión que está activa.
Contacts: permite crear, obtener, modificar, guardar y borrar
contactos en el dispositivo.
Device: obtiene información sobre el dispositivo.
Events: es un control de eventos que sirve saber si hay conexión o no,
estado de la batería, etc.
File: sirve para crear, guardar, leer o borrar archivos y carpetas o saber
cuántos archivos tiene una carpeta.
Geolocation: accede al GPS.
Globalization: obtiene información y lleva a cabo operaciones de
configuración regional y la zona horaria.
InAppBrowser: lanza otro navegador a pantalla completa en el cual
puedes embeber una web.
Media: detecta audio, video, darle al play o al pause, en que parte del
audio está, etc.
Notification: permite mostrar notificaciones visuales, o mediante
sonido o vibración.
Splashcreen: es la primera pantalla mientras el dispositivo se prepara y
empieza a cargar la aplicación.
Storage: para guardar archivos, leer archivos de la SD, etc.
19
d. Practica 1 - GrandQuiz
Enlace de la práctica 1
e. Practica 2 - Gunman
En esta práctica vamos a crear una aplicación que simule el duelo en el medio
oeste. Es decir, desenfundar para disparar. Además, contiene una biblioteca
para seleccionar el arma para el duelo.
Enlace de la práctica 2
b. Instalar en el emulador
cd C:\Users\nombre_usuario\AppData\Local\Android\android-sdk\platform-tools
adb devices
adb install C:\Users\AME2001\Downloads\Labder.apk
c. Subir al PlayStore
Video de demostración
20