Programacion En Android Basico
Enviado por frodo1992 • 11 de Marzo de 2013 • 13.522 Palabras (55 Páginas) • 496 Visitas
CURSO ANDROID 2
SOBRE LA GUÍA
Curso Android:
Desarrollo de aplicaciones móviles
Versión 1 / junio 2011
Nivel: Básico / Intermedio
El Curso Android se encuentra en línea en:
http://www.maestrosdelweb.com/editorial/curso-android
Un proyecto de Maestros del Web
ÐÐ Edición: Stephanie Falla Aroche
ÐÐ Diseño y diagramación: Iván E. Mendoza
ÐÐ Autor: Adrián Catalán
Este trabajo se encuentra bajo una licencia Creative Commons
Atribución-NoComercial-CompartirIgual 3.0 Unported (CC BY-NC-SA 3.0)
El logotipo de Android es compartido por Google bajo licencia Creative Commons por Atribución.
Contacto
http://www.maestrosdelweb.com/sitio/correo/
Redes sociales
Facebook: http://www.facebook.com/maestrosdelweb
Twitter: http://www.twitter.com/maestros
CURSO ANDROID 3
SOBRE EL AUTOR
Adrián Catalán
Guatemalteco, Ingeniero en Sistemas con una Maestría en Tecnologías de Información con especialidad
en Seguridad informática y Redes de Computadoras de la Universidad Galileo.
Es catedrático de cursos sobre arquitectura de computadoras, máquinas y lenguajes, compiladores,
bases de datos, ingeniería de software, desarrollo web, sistemas operativos, redes, voz sobre IP, seguridad
informática y métodos forenses en IT.
Desarrollador de software, apasionado por aplicaciones web (Ruby On Rails) y móviles (Android), fundador
del grupo de tecnologías de Google en Guatemala(GTUG) y co fundador de Elemental Geeks es un
firme creyente del infinito talento hispanoamericano, consciente de la necesidad de fomentarlo y darlo
a conocer.
Puedes comunicarte a través de redes sociales:
Email: adriancatalan@gmail.com
Facebook: adrian.catalan
Twitter: @ykro
CURSO ANDROID 4
ÍNDICE
1 | Sobre la guía........................................................................................2
2 | Sobre el autor......................................................................................3
3 | Construir un lector de feeds simple....................................................5
4 | Aumentar la funcionalidad de un lector de feeds............................ 23
5 | Trabajando con imágenes (cámara y galería)................................... 44
6 | Grabación y reproducción de vídeo...................................................55
7 | Geolocalización y utilización de mapas de Google........................... 64
8 | Trabajar con el acelerómetro............................................................73
9 | Reproducción de sonido en un ciclo infinito.................................... 83
10 | Envío de email utilizando Android....................................................90
11 | Trabajando con APIs (Facebook y Twitter)........................................99
12 | Conectándonos con Apis de Google................................................ 117
13 | Comunidades android.................................................................... 134
14 | Otras guías de maestros del web....................................................135
Construir un lector de
feeds simple
1capítulo
CURSO ANDROID 6
CAPÍTULO 1
Construir un lector de feeds simple
Bienvenidos al primer capítulo del curso sobre Android daremos inicio con el funcionamiento de la
arquitectura de esta plataforma móvil y los bloques básicos de una aplicación.
Kernel de Linux
En la base tenemos el kernel 2.6 de Linux, Android lo utiliza por su robustez demostrada y por la implementación
de funciones básicas para cualquier sistema operativo, por ejemplo: seguridad, administración
de memoria y procesos, implementación de conectividad de red (network stack) y varios interpretes
(drivers) para comunicación con los dispositivos físicos(hardware).
Android utiliza como base el kernel de Linux pero los dos sistemas no son lo mismo, Android no cuenta
con un sistema nativo de ventanas de Linux ni tiene soporte para glibc (libería estándar de C) ni tampoco
es posible utilizar la mayoría de aplicaciones de GNU de Linux.
Además de todo lo ya implementado en el kernel de Linux, Android agrega algunas cosas específicas
para plataformas móviles como la comunicación entre procesos (lograda a través del binder), la forma
de manejar la memoria compartida (ashmem) y la administración de energía (con wakelocks). De las
características únicas del kernel utilizado por Android encuentran más información en Android Kernel
Features 1.
Librerías y ejecución
Sobre el kernel, tenemos un conjunto de librerías de C y C++ utilizadas por el sistema para varios fines
1 http://elinux.org/Android_Kernel_Features
CURSO ANDROID 7
como el manejo de la pantalla (surface manager), mapas de bits y tipos de letra (Free Type), gráficas en
2D y 3D (SGL y OpenGL), manejo de multimedia (Media Framework), almacenamiento de datos (SQLite)
y un motor para las vistas web y el navegador (WebKit).
Junto a estas librerías, encontramos lo necesario para la ejecución de las aplicaciones a través de la
máquina virtual Dalvik. Cada aplicación utiliza una instancia de la máquina virtual ejecutando un archivo
DEX (Dalvik Executable) y el sistema está optimizado para que se ejecuten múltiples instancias de la
máquina virtual. Se desarrolla en Java pero no se utiliza una máquina virtual de Sun para su ejecución
ni tampoco archivos CLASS.
Estructura de aplicaciones
Sobre las librerías encontramos una estructura que nos brinda un contexto para desarrollar, este
framework permite a los desarrolladores aprovechar un sistema de vistas ya construido, administrar
notificaciones y acessar datos a través de proveedores de contenido entre otras cosas.
Aplicaciones
Las aplicaciones centrales que incluye el sistema por defecto son: teléfono, navegador, manejo de
contactos, etc. En esta capa de la arquitectura es donde trabajaremos desarrollando aplicaciones.
Bloques básicos de una aplicación
Una vez vista la arquitectura, empezaremos con lo fundamental para desarrollar una aplicación. Los
CURSO ANDROID 8
componentes básicos de una aplicación son: activities, intents, views, services, content
providers y broadcast receivers.
Si dominan bien estos términos pueden saltar
...