SlideShare uma empresa Scribd logo
1 de 32
Píldoras Android I Introducción – 2ª parte Sergi Martínez
Overview Bloques básicos de una aplicación de Android Activity Intents El Manifest Recursos
Bloques básicos de una aplicación Activities Son los encargados de mostrar la interfaz y gestionar sus eventos Services Se ejecutan en background Broadcast Receivers Responden ante sucesos del sistema Content Providers Almacenan información y la ponen a disposición de otras apps
Activity «…si hay que mostrarlo, se muestra, pero mostrarlo paná, es tontería»
Activities Una Activity es una pantalla de la interfaz Las aplicaciones constan de una o más Activity Cada Activity es reponsable de guardar su estado Una Activity se encarga de: Crear una ventana donde colocar la interfaz  Gestionar la interfaz Responder a los eventos (onClick, onLongClick, etc).
Una Activity básica
Estados de una actividad El sistema gestiona las actividades como una pila Una actividad tiene cuatro estados: Activa: la actividad está en primer plano y tiene el focus(enfoque de usuario). Se encuentra en lo alto de la pila. En pausa: la actividad es visible, pero no tiene el focus. Ej: hay un diálogo sobre ella con el focusretenido. Detenida: La actividad está tapada por otra aplicación. Mantiene sus datos. Destruida: Una actividad detenida ha sido destruida para liberar memoria y ha perdido sus datos. Hay que recrearla completamente.
Ciclo de vida de una actividad
Métodos
Iniciar otra Activity Uso del método startActivity(Intent) o startActivityForResult (Intent, int) Podemos pasar parametros con Intent.putExtra(int, <type>) Recibirlos con getIntent().getExtras().get<Type>(clave);
Devolver valores de una Activity Establecemos el valor a devolver con setResult(intresultCode) o setResult (intresultCode, Intent data) La actividad «llamadora» implementa el método onActivityResult(intrequestCode, intresultCode, Intent data) resultCode puede ser uno de estos valores: RESULT_CANCELED RESULT_OK RESULT_FIRST_USER
Intent «… Trata de arrancarlo, Carlos, por tu…»
Intents Android se basa en multitud de pequeños componentes Estos componentes se comunican viaIntents Mensajes utilizados para notificar a las aplicaciones de eventos Cambios de Hardware. Ej: tarjeta SD insertada. Recepción de datos. Ej: llegada de un sms Eventos de la apliación. Ej: se ha lanzado la aplicación Etc Es posible crear nuestros propio intents
Partes de un Intent Partes básicas La acción: una constante que indica la acción que se lanza. Ej.: VIEW_ACTION, EDIT_ACTION Los datos: uri indicando el recurso asociado. Ej.: content://contacts/people/1 Partes opcionales Una categoría: agrupa el tipo de Intent Un tipo MIME: indica el tipo de recurso si no concemos una uri Un componente: la clase que debe tener el receptor. Obvia las otras propiedades, pero es más frágil. Extras: un Bundle con información extra que el receptor va a necesitar
Ejemplos de Intent ANSWER_ACTION CALL_ACTION DELETE_ACTION DIAL_ACTION EDIT_ACTION FACTORY_TEST_ACTION GET_CONTENT_ACTION INSERT_ACTION MAIN_ACTION: Inicio de aplicación PICK_ACTION: permitir a otras apps elegir contenido de la tuya VIEW_CONTENT: para ver contenido EDIT_CONTENT: para editar contenido
Categorias de Intent ALTERNATIVE_CATEGORY BROWSABLE_CATEGORY DEFAULT_CATEGORY GADGET_CATEGORY HOME_CATEGORY LAUNCHER_CATEGORY PREFERENCE_CATEGORY SELECTED_ALTERNATIVE_CATEGORY TAB_CATEGORY TEST_CATEGORY
Llegando a la actividad adecuada Una actividad debe cumplir tres reglas para responder un Intent La actividad debe soportar la acción especificada La actividad debe soportar el tipo MIME si lo hay La actividad debe soportar TODAS las categorias nombradas en el Intent Uso de Intent-Filter en el manifest
Ejemplo
Manifest.xml «…un xml para atarlos a todos en las sombras…»
Manifest El Manifest es el archivo donde la aplicación le dice al sistema que elementos requiere para funcionar Siempre debe llamarse AndroidManifest.xml y estar en la raiz del proyecto Entre otras cosas contiene: Atributos de la aplicación y metadatos La declaración de actividades y otros componentes Librerías externas Permisos Se puede editar via GUI o editando el XML
Manifest inicial
Versión de la aplicación VersionCode es importante para el Market VersionName es importante para el usuario y/o nosotros
Definición de la actividad Definimos las actividades y sus intent-filter
Versión del SDK minSdkVersion, maxSdkVersion y targetSdkVersion
Permisos de la aplicación Avisan al usuario de las acciones que realizará la apliación Listados en: http://developer.android.com/reference/android/Manifest.permission.html
Recursos «…¡Adelante gadget-o-Layout!…»
Recursos Un recurso es un elemento a utilizar durante la ejecución de la aplicación Existen diferentes tipos de recursos: Layouts Imágenes Cadenas de texto Sonidos Colores Temas Animaciones etc
Recursos Se almacenan en la carpeta resources Cada tipo de recurso tiene va en una carpeta específica Utilizan sufijos para determinar que recursos utlizar según contexto (tamaño de pantalla, idioma, orientación, etc.) Nombre en mínusculas La extensión se ignora (mismo nombre, diferente extensión se considera duplicado)
La clase R La clase R es generada y mantenida por el sistema y no debe ser modificada Contiene un identificador (int) único por cada recurso  Podemos hacer referencia a un recurso en código por R.<tipo>.<nombre>. Ej.: R.layout.main
Nombrar recursos en XML Para referirnos a un recurso utilizamos la siguiente sintaxis: @<tipo de recurso>/<nombre del recurso> Por ejemplo @string/app_name Para definir un nombre utilizamos: @+<tipo de recurso>/<nombre de recurso>
Ejemplo
Fin ¿Hay preguntas? ¿no? Pues vamos a comer  sergi@catdroid.org sergi.martinez@gmail.com www.sergiandreplace.com @sergiandreplace

Mais conteúdo relacionado

Semelhante a Píldoras android i. Intro - 2ª parte

Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olothojalataverde
 
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ónEmilio Aviles Avila
 
Curso de Android 4.x : Unidad 04 Componentes
Curso de Android 4.x : Unidad 04 ComponentesCurso de Android 4.x : Unidad 04 Componentes
Curso de Android 4.x : Unidad 04 ComponentesDavid Vaquero
 
Instrucciones y estructuras
Instrucciones y estructurasInstrucciones y estructuras
Instrucciones y estructurasFernand Bernowly
 
Android estructura del Sistema Operativo
Android estructura del Sistema OperativoAndroid estructura del Sistema Operativo
Android estructura del Sistema OperativoJesus Jimenez
 
Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android introhojalataverde
 
Curso Android Tema 2
Curso Android Tema 2Curso Android Tema 2
Curso Android Tema 2Frank Jorge
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a EventosLaura
 
Preguntas de android
Preguntas de androidPreguntas de android
Preguntas de androidJimmy Davila
 
Flex Camp 2008. Ricardo Poblete
Flex Camp 2008. Ricardo PobleteFlex Camp 2008. Ricardo Poblete
Flex Camp 2008. Ricardo Pobleteripoblet
 
Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Androidjezabelink
 
Curso introducción a Android
Curso introducción a AndroidCurso introducción a Android
Curso introducción a AndroidSlashMobility.com
 
presentacion de actividades e intent.pptx
presentacion de actividades e intent.pptxpresentacion de actividades e intent.pptx
presentacion de actividades e intent.pptxLoorCarvajalJohnMich
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en androidKiKe Cm
 

Semelhante a Píldoras android i. Intro - 2ª parte (20)

Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olot
 
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
 
Introduccion a Android
Introduccion a AndroidIntroduccion a Android
Introduccion a Android
 
Curso de Android 4.x : Unidad 04 Componentes
Curso de Android 4.x : Unidad 04 ComponentesCurso de Android 4.x : Unidad 04 Componentes
Curso de Android 4.x : Unidad 04 Componentes
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Instrucciones y estructuras
Instrucciones y estructurasInstrucciones y estructuras
Instrucciones y estructuras
 
Android estructura del Sistema Operativo
Android estructura del Sistema OperativoAndroid estructura del Sistema Operativo
Android estructura del Sistema Operativo
 
Curso Introducción a android
Curso Introducción a androidCurso Introducción a android
Curso Introducción a android
 
Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android intro
 
Curso Android Tema 2
Curso Android Tema 2Curso Android Tema 2
Curso Android Tema 2
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a Eventos
 
Preguntas de android
Preguntas de androidPreguntas de android
Preguntas de android
 
Introducción a Android
Introducción a AndroidIntroducción a Android
Introducción a Android
 
Flex Camp 2008. Ricardo Poblete
Flex Camp 2008. Ricardo PobleteFlex Camp 2008. Ricardo Poblete
Flex Camp 2008. Ricardo Poblete
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Deletreando Android
Deletreando AndroidDeletreando Android
Deletreando Android
 
Curso introducción a android
Curso introducción a android   Curso introducción a android
Curso introducción a android
 
Curso introducción a Android
Curso introducción a AndroidCurso introducción a Android
Curso introducción a Android
 
presentacion de actividades e intent.pptx
presentacion de actividades e intent.pptxpresentacion de actividades e intent.pptx
presentacion de actividades e intent.pptx
 
Curso de programacion en android
Curso de programacion en androidCurso de programacion en android
Curso de programacion en android
 

Mais de Sergi Martínez

Kotlin, a modern language for modern times
Kotlin, a modern language for modern timesKotlin, a modern language for modern times
Kotlin, a modern language for modern timesSergi Martínez
 
What is flutter and why should i care?
What is flutter and why should i care?What is flutter and why should i care?
What is flutter and why should i care?Sergi Martínez
 
What is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkWhat is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkSergi Martínez
 
Let’s talk about star wars with Dialog Flow
Let’s talk about star wars with Dialog FlowLet’s talk about star wars with Dialog Flow
Let’s talk about star wars with Dialog FlowSergi Martínez
 
Database handling with room
Database handling with roomDatabase handling with room
Database handling with roomSergi Martínez
 
Realm or: How I learned to stop worrying and love my app database
Realm or: How I learned to stop worrying and love my app databaseRealm or: How I learned to stop worrying and love my app database
Realm or: How I learned to stop worrying and love my app databaseSergi Martínez
 
It's the arts! Playing around with the Android canvas
It's the arts! Playing around with the Android canvasIt's the arts! Playing around with the Android canvas
It's the arts! Playing around with the Android canvasSergi Martínez
 
Introduction to Android Fragments
Introduction to Android FragmentsIntroduction to Android Fragments
Introduction to Android FragmentsSergi Martínez
 
Creating multillingual apps for android
Creating multillingual apps for androidCreating multillingual apps for android
Creating multillingual apps for androidSergi Martínez
 

Mais de Sergi Martínez (13)

Kotlin, a modern language for modern times
Kotlin, a modern language for modern timesKotlin, a modern language for modern times
Kotlin, a modern language for modern times
 
What is flutter and why should i care?
What is flutter and why should i care?What is flutter and why should i care?
What is flutter and why should i care?
 
What is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkWhat is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talk
 
Let’s talk about star wars with Dialog Flow
Let’s talk about star wars with Dialog FlowLet’s talk about star wars with Dialog Flow
Let’s talk about star wars with Dialog Flow
 
Database handling with room
Database handling with roomDatabase handling with room
Database handling with room
 
Realm or: How I learned to stop worrying and love my app database
Realm or: How I learned to stop worrying and love my app databaseRealm or: How I learned to stop worrying and love my app database
Realm or: How I learned to stop worrying and love my app database
 
Android data binding
Android data bindingAndroid data binding
Android data binding
 
It's the arts! Playing around with the Android canvas
It's the arts! Playing around with the Android canvasIt's the arts! Playing around with the Android canvas
It's the arts! Playing around with the Android canvas
 
Smartphones
SmartphonesSmartphones
Smartphones
 
Introduction to Android Fragments
Introduction to Android FragmentsIntroduction to Android Fragments
Introduction to Android Fragments
 
Creating multillingual apps for android
Creating multillingual apps for androidCreating multillingual apps for android
Creating multillingual apps for android
 
Introducción a mobclix
Introducción a mobclixIntroducción a mobclix
Introducción a mobclix
 
Admob y yo
Admob y yoAdmob y yo
Admob y yo
 

Último

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 

Último (20)

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 

Píldoras android i. Intro - 2ª parte

  • 1. Píldoras Android I Introducción – 2ª parte Sergi Martínez
  • 2. Overview Bloques básicos de una aplicación de Android Activity Intents El Manifest Recursos
  • 3. Bloques básicos de una aplicación Activities Son los encargados de mostrar la interfaz y gestionar sus eventos Services Se ejecutan en background Broadcast Receivers Responden ante sucesos del sistema Content Providers Almacenan información y la ponen a disposición de otras apps
  • 4. Activity «…si hay que mostrarlo, se muestra, pero mostrarlo paná, es tontería»
  • 5. Activities Una Activity es una pantalla de la interfaz Las aplicaciones constan de una o más Activity Cada Activity es reponsable de guardar su estado Una Activity se encarga de: Crear una ventana donde colocar la interfaz Gestionar la interfaz Responder a los eventos (onClick, onLongClick, etc).
  • 7. Estados de una actividad El sistema gestiona las actividades como una pila Una actividad tiene cuatro estados: Activa: la actividad está en primer plano y tiene el focus(enfoque de usuario). Se encuentra en lo alto de la pila. En pausa: la actividad es visible, pero no tiene el focus. Ej: hay un diálogo sobre ella con el focusretenido. Detenida: La actividad está tapada por otra aplicación. Mantiene sus datos. Destruida: Una actividad detenida ha sido destruida para liberar memoria y ha perdido sus datos. Hay que recrearla completamente.
  • 8. Ciclo de vida de una actividad
  • 10. Iniciar otra Activity Uso del método startActivity(Intent) o startActivityForResult (Intent, int) Podemos pasar parametros con Intent.putExtra(int, <type>) Recibirlos con getIntent().getExtras().get<Type>(clave);
  • 11. Devolver valores de una Activity Establecemos el valor a devolver con setResult(intresultCode) o setResult (intresultCode, Intent data) La actividad «llamadora» implementa el método onActivityResult(intrequestCode, intresultCode, Intent data) resultCode puede ser uno de estos valores: RESULT_CANCELED RESULT_OK RESULT_FIRST_USER
  • 12. Intent «… Trata de arrancarlo, Carlos, por tu…»
  • 13. Intents Android se basa en multitud de pequeños componentes Estos componentes se comunican viaIntents Mensajes utilizados para notificar a las aplicaciones de eventos Cambios de Hardware. Ej: tarjeta SD insertada. Recepción de datos. Ej: llegada de un sms Eventos de la apliación. Ej: se ha lanzado la aplicación Etc Es posible crear nuestros propio intents
  • 14. Partes de un Intent Partes básicas La acción: una constante que indica la acción que se lanza. Ej.: VIEW_ACTION, EDIT_ACTION Los datos: uri indicando el recurso asociado. Ej.: content://contacts/people/1 Partes opcionales Una categoría: agrupa el tipo de Intent Un tipo MIME: indica el tipo de recurso si no concemos una uri Un componente: la clase que debe tener el receptor. Obvia las otras propiedades, pero es más frágil. Extras: un Bundle con información extra que el receptor va a necesitar
  • 15. Ejemplos de Intent ANSWER_ACTION CALL_ACTION DELETE_ACTION DIAL_ACTION EDIT_ACTION FACTORY_TEST_ACTION GET_CONTENT_ACTION INSERT_ACTION MAIN_ACTION: Inicio de aplicación PICK_ACTION: permitir a otras apps elegir contenido de la tuya VIEW_CONTENT: para ver contenido EDIT_CONTENT: para editar contenido
  • 16. Categorias de Intent ALTERNATIVE_CATEGORY BROWSABLE_CATEGORY DEFAULT_CATEGORY GADGET_CATEGORY HOME_CATEGORY LAUNCHER_CATEGORY PREFERENCE_CATEGORY SELECTED_ALTERNATIVE_CATEGORY TAB_CATEGORY TEST_CATEGORY
  • 17. Llegando a la actividad adecuada Una actividad debe cumplir tres reglas para responder un Intent La actividad debe soportar la acción especificada La actividad debe soportar el tipo MIME si lo hay La actividad debe soportar TODAS las categorias nombradas en el Intent Uso de Intent-Filter en el manifest
  • 19. Manifest.xml «…un xml para atarlos a todos en las sombras…»
  • 20. Manifest El Manifest es el archivo donde la aplicación le dice al sistema que elementos requiere para funcionar Siempre debe llamarse AndroidManifest.xml y estar en la raiz del proyecto Entre otras cosas contiene: Atributos de la aplicación y metadatos La declaración de actividades y otros componentes Librerías externas Permisos Se puede editar via GUI o editando el XML
  • 22. Versión de la aplicación VersionCode es importante para el Market VersionName es importante para el usuario y/o nosotros
  • 23. Definición de la actividad Definimos las actividades y sus intent-filter
  • 24. Versión del SDK minSdkVersion, maxSdkVersion y targetSdkVersion
  • 25. Permisos de la aplicación Avisan al usuario de las acciones que realizará la apliación Listados en: http://developer.android.com/reference/android/Manifest.permission.html
  • 27. Recursos Un recurso es un elemento a utilizar durante la ejecución de la aplicación Existen diferentes tipos de recursos: Layouts Imágenes Cadenas de texto Sonidos Colores Temas Animaciones etc
  • 28. Recursos Se almacenan en la carpeta resources Cada tipo de recurso tiene va en una carpeta específica Utilizan sufijos para determinar que recursos utlizar según contexto (tamaño de pantalla, idioma, orientación, etc.) Nombre en mínusculas La extensión se ignora (mismo nombre, diferente extensión se considera duplicado)
  • 29. La clase R La clase R es generada y mantenida por el sistema y no debe ser modificada Contiene un identificador (int) único por cada recurso Podemos hacer referencia a un recurso en código por R.<tipo>.<nombre>. Ej.: R.layout.main
  • 30. Nombrar recursos en XML Para referirnos a un recurso utilizamos la siguiente sintaxis: @<tipo de recurso>/<nombre del recurso> Por ejemplo @string/app_name Para definir un nombre utilizamos: @+<tipo de recurso>/<nombre de recurso>
  • 32. Fin ¿Hay preguntas? ¿no? Pues vamos a comer sergi@catdroid.org sergi.martinez@gmail.com www.sergiandreplace.com @sergiandreplace