SlideShare a Scribd company logo
1 of 21
Download to read offline
Programando Android -
Estructura de aplicación
José Antonio Vacas #android2014
03/12/2014
ElCacharreo.com
Programación en Android
ElCacharreo.com #android2014
javacasm@elcacharreo.com
twitter
linkedin
blog
José Antonio Vacas Martínez
Programación en Android: Recursos
ElCacharreo.com #android2014
ANDROID developer.android.com
Muy bueno http://www.sgoliver.net/blog/?page_id=3011
Avanzado http://www.limecreativelabs.com/curso-gratuito-de-desarrollo-para-android/
Avanzado(En) http://www.vogella.com/android.html
MiriadaX http://miriadax.net/es/web/android_programacion
Programación en Android: Objetivos
ElCacharreo.com #android2014
● Conocer la plataforma Android
● Entorno de programación
● Crear proyecto de aplicación básica
● Crear "pantallas"
● Almacenamiento
● Publicación de aplicaciones
Detalle
Programación en Android: Arquitectura
ElCacharreo.com #android2014
■ Cada aplicación se ejecuta en su propia máquina virtual Dalvik
■ Dalvik basada en el kernel de linux, poca memoria, bytecode dex
■ Hasta 2.2 el bytecode era interpretado, ahora JIT (Just In Time)
ElCacharreo.com #android2014
Programación en Android: Arquitectura
ElCacharreo.com #android2014
Programación en Android: Desarrollo
ElCacharreo.com #android2014
Programación en Android: Desarrollo
ElCacharreo.com #android2014
Programación en Android: Desarrollo
Framework de aplicación
■ Views (vistas): se utilizan para construir una aplicación, incluyendo lists (listas), grids
(rejillas), text box (cajas de texto), buttons (botones), e incluso un navegador web
embebido
■ Content Providers (proveedores de contenido) que permiten a las aplicaciones
acceder a datos de otras aplicaciones (como los contactos), o compartir sus propios datos
■ Resource Manager (administrador de recursos), facilitar el acceso a los recursos no
son de código tales como cadenas localizadas, gráficos y archivos de diseño
■ Notification Manager (Administrador de notificaciones) que permite a todas las
aplicaciones mostrar alertas personalizadas en la barra de estado
■ Activity Manager (gestor de actividad) que gestiona el ciclo de vida de las
aplicaciones y proporciona una navegación común
Programación en Android: Arquitectura
ElCacharreo.com #android2014
■ Activities: manejan la interfaz de usuario y la pantalla del
smartphone. Se van añadiendo a una cola LIFO
■ Services: manejan los procesamiento en segundo plano.
■ Broadcast receivers: manejan la comunicación entre sus
aplicaciones.
■ Content providers: manejan los datos y todo lo relacionado con
la gestión de datos.
■ Intent: contiene un mensaje que se envía entre los diferentes
módulos.
Programación en Android: Arquitectura
ElCacharreo.com #android2014
Fichero Manifest.xml
El fichero manifest sirve para muchos más propósitos que simplemente
definir los componentes de nuestra aplicación. La siguiente lista resume
las partes relevantes de un fichero manifest en el contexto del desarrollo
de juegos:
■ La versión de nuestra aplicación tal y como se muestra y utiliza en
el Market de Android
■ La versión de Android en la que nuestra aplicación puede funcionar
■ Perfiles de hardware que nuestra aplicación requiere (ie: multitáctil,
resoluciones de pantalla específicas o soporte para OpenGL ES 2.0)
■ Permisos para usar componentes específicos, tales como escritura
en la tarjeta SD o acceso a la pila de red.
ElCacharreo.com #android2014
Programación en Android: Arquitectura
Programación en Android: Estructura de aplicación
ElCacharreo.com #android2014
Programación en Android:Primeros pasos
Pulsamos sobre New Project y ahí seleccionamos Android Application Project
ElCacharreo.com #android2014
Programación en Android:Primeros pasos
Ahora asignamos las propiedades fundamentales del proyecto
ElCacharreo.com #android2014
Programación en Android: Primeros pasos
Podemos configurar el icono de nuestra aplicación, a partir de una
imagen
ElCacharreo.com #android2014
Programación en Android: Primeros pasos
Ahora seleccionaremos el nombre de esta activity y la forma de la
navegación de la aplicación
ElCacharreo.com #android2014
Programación en Android: Primeros pasos
Si todo ha ido correctamente, tendremos cargado nuestro nuevo proyecto
ElCacharreo.com #android2014
Programación en Android
Estructura de proyecto
■ AndroidManifest.xml describe su aplicación. Define de qué actividades y
servicios está compuesto, qué versiones mínima y objetivo de Android se suponen
que van a ejecutarse y qué permisos necesitan
■ project.properties contiene varias configuraciones para construir el sistema. No
debemos tocar aquí ya que el plug-in de ADT lo modifica cuando es necesario
■ src/ contiene todos los ficheros fuente Java. Note que el paquete tiene el
mismo nombre que el nombre del proyecto Android
■ gen/ contiene los ficheros fuente Java generados oir el sistema de
construcción de Android. Estos se generan automáticamente en algunos caso. El
más importante es el que se puede observar en la imagen, el fichero R.java, y la
clase R. Esta clase R contendrá en todo momento una serie de constantes con los
ID de todos los recursos de la aplicación incluidos en la carpeta /res/, de forma que
podamos acceder fácilmente a estos recursos desde nuestro código a través de
este dato. Así, por ejemplo, la constante R.drawable.icon contendrá el ID de la
imagen “icon.png” contenida en la carpeta /res/drawable/
■ assets/ es donde se almacenan los ficheros que nuestra aplicación necesite (i.
e. ficheros de configuración, ficheros de audio, etc.). Estos ficheros se
empaquetarán con la aplicación Android
■ res/ contiene recursos que la aplicación necesite como iconos, cadenas de
texto para internacionalización, apariencia del UI definidos vía XML. También se
empaquetarán con la aplicación Android
■ Android 4.0.3 indica que se está generando contra una versión de Android
4.0.3. Esto es normalmente una dependencia en la forma de un JAR estándar que
contiene las clases de la API Android 4.0.3.
■ El Explorador de Paquetes contiene otro directorio llamado bin/ que aloja el
código compilado que se necesita para el dispositivo o el emulador. Al igual que la
carpeta gen/ no nos preocupamos mucho de ellos.
ElCacharreo.com #android2014
Programación en Android: Recursos - Traducciones
Del mismo modo en el caso de que tengamos imágenes
distintas dependiendo del idioma duplicaremos la carpeta
para cada idioma con los diferentes contenidos.
En el ejemplo:
Italian drawable-it-rIT/background.png
French drawable-fr-rFR/background.png
French (Canada) drawable-fr-rCA/background.png
English (Canada) drawable-en-rCA/background.png
Russian drawable-ru-rRU/background.png
US English drawable-en-rUS/background.png
Default (Earth image) drawable/background.png
ElCacharreo.com #android2014
Programación en Android: Recursos
ElCacharreo.com #android2014
ANDROID developer.android.com
Muy bueno http://www.sgoliver.net/blog/?page_id=3011
Avanzado http://www.limecreativelabs.com/curso-gratuito-de-desarrollo-para-android/
Avanzado(En) http://www.vogella.com/android.html
MiriadaX http://miriadax.net/es/web/android_programacion

More Related Content

What's hot

Anexo 11 actividad 3 sistemas operativos en red
Anexo 11 actividad 3 sistemas operativos en redAnexo 11 actividad 3 sistemas operativos en red
Anexo 11 actividad 3 sistemas operativos en red
Edgar Mtz
 
arquitectura android y tecnologia mpls
arquitectura android y tecnologia mplsarquitectura android y tecnologia mpls
arquitectura android y tecnologia mpls
jose-24
 
Software libre y software propietario
Software libre y software propietarioSoftware libre y software propietario
Software libre y software propietario
GuadalupeRomero
 
Curso de programación básico de android
Curso de programación básico de androidCurso de programación básico de android
Curso de programación básico de android
ENANITOS120
 

What's hot (19)

Desarrollo android - 2 - arquitectura del sistema
Desarrollo android   - 2 - arquitectura del sistemaDesarrollo android   - 2 - arquitectura del sistema
Desarrollo android - 2 - arquitectura del sistema
 
"Android de la A a la Z" -- Introducción
"Android de la A a la Z" -- Introducción"Android de la A a la Z" -- Introducción
"Android de la A a la Z" -- Introducción
 
31-Android Generalidades Sobre Servicios Webs con MySQL
31-Android Generalidades Sobre Servicios Webs con MySQL31-Android Generalidades Sobre Servicios Webs con MySQL
31-Android Generalidades Sobre Servicios Webs con MySQL
 
"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1"Android de la A a la Z" -- Unidad 1
"Android de la A a la Z" -- Unidad 1
 
"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2
 
Exposición 20 aniversario linux
Exposición 20 aniversario linuxExposición 20 aniversario linux
Exposición 20 aniversario linux
 
Curso de Android 4.x Unidad 03 Hola Mundo
Curso de Android 4.x Unidad 03 Hola MundoCurso de Android 4.x Unidad 03 Hola Mundo
Curso de Android 4.x Unidad 03 Hola Mundo
 
Anexo 11 actividad 3 sistemas operativos en red
Anexo 11 actividad 3 sistemas operativos en redAnexo 11 actividad 3 sistemas operativos en red
Anexo 11 actividad 3 sistemas operativos en red
 
Presentación sistemas operativos
Presentación sistemas operativosPresentación sistemas operativos
Presentación sistemas operativos
 
arquitectura android y tecnologia mpls
arquitectura android y tecnologia mplsarquitectura android y tecnologia mpls
arquitectura android y tecnologia mpls
 
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
 
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones MovilesDescargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
Descargar Java JDK, Netbeans y Java ME para Desarrollo de Aplicaciones Moviles
 
Software libre y software propietario
Software libre y software propietarioSoftware libre y software propietario
Software libre y software propietario
 
"Software libre vs software de autor"
"Software libre vs software de autor""Software libre vs software de autor"
"Software libre vs software de autor"
 
Herramientas para Desarrollo de Aplicaciones Moviles
Herramientas para Desarrollo de Aplicaciones MovilesHerramientas para Desarrollo de Aplicaciones Moviles
Herramientas para Desarrollo de Aplicaciones Moviles
 
Software
SoftwareSoftware
Software
 
Software libre, software propietario, modalidade de software.
Software libre, software propietario, modalidade de software.Software libre, software propietario, modalidade de software.
Software libre, software propietario, modalidade de software.
 
Curso de programación básico de android
Curso de programación básico de androidCurso de programación básico de android
Curso de programación básico de android
 
Software
SoftwareSoftware
Software
 

Viewers also liked

Gross State Product using the Production approach GSP(P) Information Paper, A...
Gross State Product using the Production approach GSP(P) Information Paper, A...Gross State Product using the Production approach GSP(P) Information Paper, A...
Gross State Product using the Production approach GSP(P) Information Paper, A...
Fundação de Economia e Estatística
 
Leading Business July 2015 Digital
Leading Business July 2015 DigitalLeading Business July 2015 Digital
Leading Business July 2015 Digital
Shane Frost
 
CAdip Dirección de Proyectos
CAdip Dirección de ProyectosCAdip Dirección de Proyectos
CAdip Dirección de Proyectos
JCarreraM
 
Publicación obtenida de la revista Stratego
Publicación obtenida de la revista StrategoPublicación obtenida de la revista Stratego
Publicación obtenida de la revista Stratego
anibalbasurto
 
Clinica Dental
Clinica DentalClinica Dental
Clinica Dental
Jimenosky
 
050608 architect academy webcast 1
050608 architect academy webcast 1050608 architect academy webcast 1
050608 architect academy webcast 1
juliank13
 
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
Brent Smith
 
Fbc PlaySchool Registration 2015
Fbc PlaySchool Registration 2015Fbc PlaySchool Registration 2015
Fbc PlaySchool Registration 2015
Natasha Burris
 

Viewers also liked (20)

Arquitectura, aplicaciones y seguridad en Android
Arquitectura, aplicaciones y seguridad en AndroidArquitectura, aplicaciones y seguridad en Android
Arquitectura, aplicaciones y seguridad en Android
 
Desarrollo android - 4 - arquitectura de aplicación
Desarrollo android  - 4 - arquitectura de aplicaciónDesarrollo android  - 4 - arquitectura de aplicación
Desarrollo android - 4 - arquitectura de aplicación
 
Ilford_presentation
Ilford_presentationIlford_presentation
Ilford_presentation
 
Las Las pesetas españolas
Las Las pesetas españolasLas Las pesetas españolas
Las Las pesetas españolas
 
Gross State Product using the Production approach GSP(P) Information Paper, A...
Gross State Product using the Production approach GSP(P) Information Paper, A...Gross State Product using the Production approach GSP(P) Information Paper, A...
Gross State Product using the Production approach GSP(P) Information Paper, A...
 
Corporate Benefits Brochure
Corporate Benefits BrochureCorporate Benefits Brochure
Corporate Benefits Brochure
 
Leading Business July 2015 Digital
Leading Business July 2015 DigitalLeading Business July 2015 Digital
Leading Business July 2015 Digital
 
Visibility BTL Home Market
Visibility BTL Home MarketVisibility BTL Home Market
Visibility BTL Home Market
 
Trabajo. tics
Trabajo. ticsTrabajo. tics
Trabajo. tics
 
CAdip Dirección de Proyectos
CAdip Dirección de ProyectosCAdip Dirección de Proyectos
CAdip Dirección de Proyectos
 
Los Museos y El turismo
Los Museos y El turismoLos Museos y El turismo
Los Museos y El turismo
 
Publicación obtenida de la revista Stratego
Publicación obtenida de la revista StrategoPublicación obtenida de la revista Stratego
Publicación obtenida de la revista Stratego
 
Clinica Dental
Clinica DentalClinica Dental
Clinica Dental
 
050608 architect academy webcast 1
050608 architect academy webcast 1050608 architect academy webcast 1
050608 architect academy webcast 1
 
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
2895 CCID CViews Autumn Mar May 2016 1-8 LowResSingles
 
Fbc PlaySchool Registration 2015
Fbc PlaySchool Registration 2015Fbc PlaySchool Registration 2015
Fbc PlaySchool Registration 2015
 
Flirt, Date, Commit: Injecting Design into an Open Source Project
Flirt, Date, Commit: Injecting Design into an Open Source ProjectFlirt, Date, Commit: Injecting Design into an Open Source Project
Flirt, Date, Commit: Injecting Design into an Open Source Project
 
Mitsubishi listino recuperatori_calore
Mitsubishi listino recuperatori_caloreMitsubishi listino recuperatori_calore
Mitsubishi listino recuperatori_calore
 
La Publicidad
La PublicidadLa Publicidad
La Publicidad
 
crema nocturna
crema nocturnacrema nocturna
crema nocturna
 

Similar to 2.1 android cep jaen 2014 estructura de aplicación

Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweets
Jorge Soro
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en android
Karla Silva
 
Herramientas para el desarrollo en plataformas móviles web
Herramientas para el desarrollo en plataformas móviles   webHerramientas para el desarrollo en plataformas móviles   web
Herramientas para el desarrollo en plataformas móviles web
joycesita
 
Desarrollo de aplicaciones android con Python
Desarrollo de aplicaciones android con PythonDesarrollo de aplicaciones android con Python
Desarrollo de aplicaciones android con Python
Manuel Pérez
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
ikalbeniz
 
Curso android desarrollo de aplicaciones moviles
Curso android   desarrollo de aplicaciones movilesCurso android   desarrollo de aplicaciones moviles
Curso android desarrollo de aplicaciones moviles
Jose Antonio Prieto
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
KiKe Cm
 

Similar to 2.1 android cep jaen 2014 estructura de aplicación (20)

Presentacion android mistela&tweets
Presentacion android mistela&tweetsPresentacion android mistela&tweets
Presentacion android mistela&tweets
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
 
IOF Labs Weekend - Android (27082011)
IOF Labs Weekend - Android (27082011)IOF Labs Weekend - Android (27082011)
IOF Labs Weekend - Android (27082011)
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en android
 
Curso Desarrollo Android
Curso Desarrollo AndroidCurso Desarrollo Android
Curso Desarrollo Android
 
Herramientas para el desarrollo en plataformas móviles web
Herramientas para el desarrollo en plataformas móviles   webHerramientas para el desarrollo en plataformas móviles   web
Herramientas para el desarrollo en plataformas móviles web
 
Desarrollo de aplicaciones android con Python
Desarrollo de aplicaciones android con PythonDesarrollo de aplicaciones android con Python
Desarrollo de aplicaciones android con Python
 
Android studio
Android studioAndroid studio
Android studio
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
 
App inventor
App inventorApp inventor
App inventor
 
Entorno-de-Desarrollo-Android-Studio
Entorno-de-Desarrollo-Android-StudioEntorno-de-Desarrollo-Android-Studio
Entorno-de-Desarrollo-Android-Studio
 
Seminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforumSeminario Android (Parte 1) - movilforum
Seminario Android (Parte 1) - movilforum
 
Aplicaciones android
Aplicaciones androidAplicaciones android
Aplicaciones android
 
Ionic 2
Ionic 2 Ionic 2
Ionic 2
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
MobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a AndroidMobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a Android
 
Mdw guia-android-1.3
Mdw guia-android-1.3Mdw guia-android-1.3
Mdw guia-android-1.3
 
Curso android desarrollo de aplicaciones moviles
Curso android   desarrollo de aplicaciones movilesCurso android   desarrollo de aplicaciones moviles
Curso android desarrollo de aplicaciones moviles
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
 

More from Jose Antonio Vacas

More from Jose Antonio Vacas (20)

No mas semáforos javacasm
No mas semáforos   javacasmNo mas semáforos   javacasm
No mas semáforos javacasm
 
1.4 open hardware
1.4   open hardware1.4   open hardware
1.4 open hardware
 
Curso arduino basico bitbloq
Curso arduino basico bitbloqCurso arduino basico bitbloq
Curso arduino basico bitbloq
 
Robotica Educativa CEP Granada 2015
Robotica Educativa CEP Granada 2015Robotica Educativa CEP Granada 2015
Robotica Educativa CEP Granada 2015
 
Construcción de brazo robot
Construcción de brazo robotConstrucción de brazo robot
Construcción de brazo robot
 
Robotica educativa ii
Robotica educativa iiRobotica educativa ii
Robotica educativa ii
 
Robótica educativa swipe
Robótica educativa   swipeRobótica educativa   swipe
Robótica educativa swipe
 
1. inteligencia artificial y robótica
1. inteligencia artificial y robótica1. inteligencia artificial y robótica
1. inteligencia artificial y robótica
 
2. inteligencia artificial - Tareas
2. inteligencia artificial - Tareas2. inteligencia artificial - Tareas
2. inteligencia artificial - Tareas
 
3. inteligencia artificial ramas
3. inteligencia artificial   ramas3. inteligencia artificial   ramas
3. inteligencia artificial ramas
 
1.1 android cep jaen 2015 introducción
1.1 android cep jaen 2015   introducción1.1 android cep jaen 2015   introducción
1.1 android cep jaen 2015 introducción
 
1.2 android cep jaen 2015 instalación del entorno
1.2 android  cep jaen 2015   instalación del entorno1.2 android  cep jaen 2015   instalación del entorno
1.2 android cep jaen 2015 instalación del entorno
 
1.3 android cep jaen 2015 plantillas y estructura de aplicación
1.3 android cep jaen 2015   plantillas y estructura de aplicación1.3 android cep jaen 2015   plantillas y estructura de aplicación
1.3 android cep jaen 2015 plantillas y estructura de aplicación
 
1.4 android cep jaen 2015 emulador
1.4 android cep jaen 2015   emulador1.4 android cep jaen 2015   emulador
1.4 android cep jaen 2015 emulador
 
Arduino práctico librerias
Arduino práctico   libreriasArduino práctico   librerias
Arduino práctico librerias
 
Arduino práctico introducción a la electrónica
Arduino práctico   introducción a la electrónicaArduino práctico   introducción a la electrónica
Arduino práctico introducción a la electrónica
 
Arduino práctico ethernet
Arduino práctico   ethernetArduino práctico   ethernet
Arduino práctico ethernet
 
Arduino práctico comunicaciones - serie
Arduino práctico   comunicaciones - serieArduino práctico   comunicaciones - serie
Arduino práctico comunicaciones - serie
 
Arduino práctico comunicaciones
Arduino práctico   comunicacionesArduino práctico   comunicaciones
Arduino práctico comunicaciones
 
Arduino práctico servos
Arduino práctico   servosArduino práctico   servos
Arduino práctico servos
 

Recently uploaded

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Recently uploaded (11)

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 

2.1 android cep jaen 2014 estructura de aplicación

  • 1. Programando Android - Estructura de aplicación José Antonio Vacas #android2014 03/12/2014 ElCacharreo.com
  • 2. Programación en Android ElCacharreo.com #android2014 javacasm@elcacharreo.com twitter linkedin blog José Antonio Vacas Martínez
  • 3. Programación en Android: Recursos ElCacharreo.com #android2014 ANDROID developer.android.com Muy bueno http://www.sgoliver.net/blog/?page_id=3011 Avanzado http://www.limecreativelabs.com/curso-gratuito-de-desarrollo-para-android/ Avanzado(En) http://www.vogella.com/android.html MiriadaX http://miriadax.net/es/web/android_programacion
  • 4. Programación en Android: Objetivos ElCacharreo.com #android2014 ● Conocer la plataforma Android ● Entorno de programación ● Crear proyecto de aplicación básica ● Crear "pantallas" ● Almacenamiento ● Publicación de aplicaciones
  • 5. Detalle Programación en Android: Arquitectura ElCacharreo.com #android2014
  • 6. ■ Cada aplicación se ejecuta en su propia máquina virtual Dalvik ■ Dalvik basada en el kernel de linux, poca memoria, bytecode dex ■ Hasta 2.2 el bytecode era interpretado, ahora JIT (Just In Time) ElCacharreo.com #android2014 Programación en Android: Arquitectura
  • 10. Framework de aplicación ■ Views (vistas): se utilizan para construir una aplicación, incluyendo lists (listas), grids (rejillas), text box (cajas de texto), buttons (botones), e incluso un navegador web embebido ■ Content Providers (proveedores de contenido) que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos), o compartir sus propios datos ■ Resource Manager (administrador de recursos), facilitar el acceso a los recursos no son de código tales como cadenas localizadas, gráficos y archivos de diseño ■ Notification Manager (Administrador de notificaciones) que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado ■ Activity Manager (gestor de actividad) que gestiona el ciclo de vida de las aplicaciones y proporciona una navegación común Programación en Android: Arquitectura ElCacharreo.com #android2014
  • 11. ■ Activities: manejan la interfaz de usuario y la pantalla del smartphone. Se van añadiendo a una cola LIFO ■ Services: manejan los procesamiento en segundo plano. ■ Broadcast receivers: manejan la comunicación entre sus aplicaciones. ■ Content providers: manejan los datos y todo lo relacionado con la gestión de datos. ■ Intent: contiene un mensaje que se envía entre los diferentes módulos. Programación en Android: Arquitectura ElCacharreo.com #android2014
  • 12. Fichero Manifest.xml El fichero manifest sirve para muchos más propósitos que simplemente definir los componentes de nuestra aplicación. La siguiente lista resume las partes relevantes de un fichero manifest en el contexto del desarrollo de juegos: ■ La versión de nuestra aplicación tal y como se muestra y utiliza en el Market de Android ■ La versión de Android en la que nuestra aplicación puede funcionar ■ Perfiles de hardware que nuestra aplicación requiere (ie: multitáctil, resoluciones de pantalla específicas o soporte para OpenGL ES 2.0) ■ Permisos para usar componentes específicos, tales como escritura en la tarjeta SD o acceso a la pila de red. ElCacharreo.com #android2014 Programación en Android: Arquitectura
  • 13. Programación en Android: Estructura de aplicación ElCacharreo.com #android2014
  • 14. Programación en Android:Primeros pasos Pulsamos sobre New Project y ahí seleccionamos Android Application Project ElCacharreo.com #android2014
  • 15. Programación en Android:Primeros pasos Ahora asignamos las propiedades fundamentales del proyecto ElCacharreo.com #android2014
  • 16. Programación en Android: Primeros pasos Podemos configurar el icono de nuestra aplicación, a partir de una imagen ElCacharreo.com #android2014
  • 17. Programación en Android: Primeros pasos Ahora seleccionaremos el nombre de esta activity y la forma de la navegación de la aplicación ElCacharreo.com #android2014
  • 18. Programación en Android: Primeros pasos Si todo ha ido correctamente, tendremos cargado nuestro nuevo proyecto ElCacharreo.com #android2014
  • 19. Programación en Android Estructura de proyecto ■ AndroidManifest.xml describe su aplicación. Define de qué actividades y servicios está compuesto, qué versiones mínima y objetivo de Android se suponen que van a ejecutarse y qué permisos necesitan ■ project.properties contiene varias configuraciones para construir el sistema. No debemos tocar aquí ya que el plug-in de ADT lo modifica cuando es necesario ■ src/ contiene todos los ficheros fuente Java. Note que el paquete tiene el mismo nombre que el nombre del proyecto Android ■ gen/ contiene los ficheros fuente Java generados oir el sistema de construcción de Android. Estos se generan automáticamente en algunos caso. El más importante es el que se puede observar en la imagen, el fichero R.java, y la clase R. Esta clase R contendrá en todo momento una serie de constantes con los ID de todos los recursos de la aplicación incluidos en la carpeta /res/, de forma que podamos acceder fácilmente a estos recursos desde nuestro código a través de este dato. Así, por ejemplo, la constante R.drawable.icon contendrá el ID de la imagen “icon.png” contenida en la carpeta /res/drawable/ ■ assets/ es donde se almacenan los ficheros que nuestra aplicación necesite (i. e. ficheros de configuración, ficheros de audio, etc.). Estos ficheros se empaquetarán con la aplicación Android ■ res/ contiene recursos que la aplicación necesite como iconos, cadenas de texto para internacionalización, apariencia del UI definidos vía XML. También se empaquetarán con la aplicación Android ■ Android 4.0.3 indica que se está generando contra una versión de Android 4.0.3. Esto es normalmente una dependencia en la forma de un JAR estándar que contiene las clases de la API Android 4.0.3. ■ El Explorador de Paquetes contiene otro directorio llamado bin/ que aloja el código compilado que se necesita para el dispositivo o el emulador. Al igual que la carpeta gen/ no nos preocupamos mucho de ellos. ElCacharreo.com #android2014
  • 20. Programación en Android: Recursos - Traducciones Del mismo modo en el caso de que tengamos imágenes distintas dependiendo del idioma duplicaremos la carpeta para cada idioma con los diferentes contenidos. En el ejemplo: Italian drawable-it-rIT/background.png French drawable-fr-rFR/background.png French (Canada) drawable-fr-rCA/background.png English (Canada) drawable-en-rCA/background.png Russian drawable-ru-rRU/background.png US English drawable-en-rUS/background.png Default (Earth image) drawable/background.png ElCacharreo.com #android2014
  • 21. Programación en Android: Recursos ElCacharreo.com #android2014 ANDROID developer.android.com Muy bueno http://www.sgoliver.net/blog/?page_id=3011 Avanzado http://www.limecreativelabs.com/curso-gratuito-de-desarrollo-para-android/ Avanzado(En) http://www.vogella.com/android.html MiriadaX http://miriadax.net/es/web/android_programacion