Download - tutoría
![Page 1: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/1.jpg)
Introducción al desarrollo de videojuegos en Google Android
Nicolás Mery U. [email protected]
twitter: @NicolasMeryhttp://www.linkedin.com/in/njmery
![Page 2: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/2.jpg)
Contenido
• Origen de Android• Arquitectura• Demo – Recorrido Android SDK – Un Game Loop en Android
• Discusión
![Page 3: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/3.jpg)
“Nuestra misión es organizar toda la información del mundo”
3
![Page 4: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/4.jpg)
“The Open Handset Alliance is a group of more than 30 technology and mobile companies who have come together to accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience. Together we have developed Android™, the first complete, open, and free mobile platform. We are committed to commercially deploy handsets and services using the Android Platform in the second half of 2008.”
4
![Page 5: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/5.jpg)
“Android is a software stack for mobile devices that includes an operating system, middleware and key applications” 5
![Page 6: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/6.jpg)
Android Stack
![Page 7: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/7.jpg)
Que aprendimos
• Android anunciado el 5 de noviembre 2007• Google es parte de la OHA cuya misión es acelerar el
desarrollo móvil.• La OHA piensa lograr esto mediante Android• Android Stack:– Sistema operativo basado en Linux– Librerías (Open GL-ES, SQLite, etc)– Runtime Android– Una DVM por cada aplicación– Todas las aplicaciones tienen la misma prioridad
![Page 8: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/8.jpg)
Componentes Android• Existen 4 tipos de componentes en Android– Activity– Service– Broadcast receiver– Content provider
• Cada componente puede ser iniciado independientemente.
• Cada componente puede ser reutilizado por otras aplicaciones.
• Componentes son configurados en el archivo AndroidManifest.xml
![Page 9: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/9.jpg)
Componentes Android
• El componente activity – Se comunica con el jugador– Para esto tiene una jerarquía de Views – Cada View es un rectangulo en la pantalla y puede
recibir input del usuario– Las Views se pueden declarar en un XML o
programáticamente.– Similar a un MIDlet (J2ME)
![Page 10: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/10.jpg)
Componentes Android
• El componente service– Corre en el fondo sin interfaz– Para usarlo uno debe hacer Bind del service.– Uno usa la interfaz expuesta por el service– Ej: el reproductor de música.
![Page 11: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/11.jpg)
Componentes Android
• El componente broadcast receiver– Recibe notificaciones y reacciona a ellas– Corre en el fondo sin interfaz– Ej: en un juego se podría usar para grabar el
estado y llevar el juego a pausa en caso de que se quede sin batería o el jugador reciba una llamada.
![Page 12: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/12.jpg)
Componentes Android
• El componente content provider– Manera estándar de proveer a una aplicación de
contenido– Corre en el fondo sin interfaz– Guarda datos en el sistema de archivos, en una
base de datos SQLite, etc– Uno puede definir sus propios content providers.– Ej: Android viene con varios content providers
definidos. Por ejemplo hay uno que nos permite acceder a los contactos del teléfono.
![Page 13: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/13.jpg)
Que aprendimos
• Las aplicaciones en Android son basadas en componentes
• Cada componente puede ser reutilizado por otras aplicaciones
• Hay 4 tipos de componentes:– Activity encargado de la UI– Service encargado de procesos independientes en el fondo– Broadcast receiver encargado de reaccionar a
notificaciones– Content provider encargado de manejar los datos
persistentes de la aplicación
![Page 14: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/14.jpg)
Requisitos Demo
• Android SDK– http://developer.android.com/sdk/1.5_r3/installin
g.html
• Recomendado hacer HelloWorld Android– http://developer.android.com/guide/tutorials/
hello-world.html
![Page 15: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/15.jpg)
Demo
• Recorrido por Android SDK• Un Game Loop en Android (LunarLander)
![Page 16: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/16.jpg)
Que aprendimos• Android SDK incluye varias aplicaciones de ejemplo
– Directorio /samples del SDK – Léanlas!– Es buen código, bien comentado
• Sistema de Debug es potente– Tags en logs– Logs de Sistema operativo
• AVDs– Parecidos a los Device Profiles usados comunmente en J2ME– Tarjeta SD
• Consola del emulador– telnet localhost <console-port>– SMS, cambiar configuraciones en Runtime, etc.
• Instalar APK– adb install XXX.apk– http://www.androidcan.com/
![Page 17: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/17.jpg)
Referencias• http://developer.android.com/guide/basics/what-is-
android.html• http://developer.android.com/sdk/1.5_r3/
installing.html• http://developer.android.com/guide/tutorials/hello-
world.html• http://developer.android.com/guide/topics/
providers/content-providers.html• http://www.androidcan.com/ (algunos APK gratis)• http://www.secondgeargames.com/archipelago (otro
apk gratis)
![Page 18: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/18.jpg)
¿Preguntas?
![Page 19: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/19.jpg)
Eso sería todo. ¡Gracias!
![Page 20: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/20.jpg)
Anexos:Ciclo de vida de una activity
![Page 21: tutoría](https://reader031.vdocuments.co/reader031/viewer/2022013011/5479a87fb4af9f35278b4700/html5/thumbnails/21.jpg)
Anexos:Ciclo de vida de un service