SlideShare una empresa de Scribd logo
Android:
      desarrollo de aplicaciones




   Raúl Jiménez Ortega
   Nicolás Fernández Valverde
   José Luis López Pino
Diseño de la interfaz de usuario

Existen dos formas de implementar la interfaz:

   Procedural: como tradicionalmente se han
    implementado las interfaces en Java → estilo
    AWT, SWING, etc.

   Declarativa: usando el lenguaje de marcas
    XML.
Ejemplo - Declarativo

¡Hola Mundo!
Servicios basados en localización

    Tres sistemas intregados:
   Localización: ofrece la clase LocationManager
    para acceder a los sistemas de localización.

   Acelerómetro y brújula: se gestiona con el
    SensorManager y requiere el uso de listeners.
    Para la carga se usa la función:
    getSystemService(nombre_del_servicio)
Cámara - Configuración

   Podemos manipular la configuración:
       Frecuencia de previsualización:
        (setPreviewFrameRate)
       Tamaño: (setPictureSize)
       Codificación de la imagen: (setPictureFormat)
       Etc.
                            Ejemplo:
        Camera.Parameters parameters = camera.getParameters();
        parameters.setPictureFormat(PixelFormat.JPEG);
        camera.setParameters(parameters);
Cámara - Captura

private void takePicture() {
    camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}




   shutterCallBack: se lanza justo cuando se cierra el
    disparador de la cámara.

   rawCallBack: recibe la imagen sin codificar tras haber
    sido tomada.

   jpegCallBack: recibe la imagen en formato JPEG.
Servicios Android

   Se ejecutan en segundo plano.
   El usuario no interactúa con los servicios, sino
    que son manejados por las aplicaciones.
   Realizan tareas como actualizar Content-
    Providers o manejar notificaciones.
   Por ejemplo se programan como servicio las
    actualizaciones automáticas para los
    programas.
Gestión de un servicio.

   Creación: Sobrecargamos los siguientes
    métodos de la clase services:
        OnCreate : Acciones cuando se crea el servicio.
        OnBind : Acciones para ligarlo a una aplicación.
        OnStart : Acciones cuando se inicia el servicio.
   Lanzar el servicio. Dos formas
        Explícita: startService(new   Intent(MyService.MY_ACTION));

     Implícita:startService(new Intent(this,MyService.class));
   Pararlo : stopService(new Intent(this, service.getClass()));
Hebras
   Todos los componentes de la aplicación
    (incluidos los servicios) corren sobre la hebra
    principal.

   Para evitar que la aplicación se bloquee las
    operaciones más costosas en tiempo se
    realizan en hebras de segundo plano.

   Se programan en hebras tareas como el
    manejo de ficheros, transacciones en bases de
    datos o búsquedas de redes.
Reproducción Multimedia

   Creamos una instancia de la clase MediaPlayer
    por cada archivo.
   MediaPlayer implementa funciones:
       De reproducción: start, stop, pause, seek...
       Recuperación de información: nombre, tamaño,
        tipo...
   Límite de instancias de la clase → tenemos
    que liberar recursos.
Grabación Multimedia

   Creamos una instancia de MediaRecorder con
    las opciones pertinentes:
       Establecemos la fuente con setAudioSource o con
        setVideoSource.
       Definir el formato de salida con setOutputFormat.
       Seleccionar el codificador a utilizar.
       Y el fichero de salida.
   Con start, stop y release manejamos la
    grabación.
El gestor de notificaciones

   Mensaje en la barra de estados.
   Icono en la barrra de estados
   Iluminar LEDs.
   Vibración.
   Sonidos.
Native Android Content Providers

              Integración entre aplicaciones


 Content Provider   Datos que ofrece
 Browser            Historial, marcadores y otra información del navegador.
 CallLog            Detalles sobre llamadas (perdidas, duración, etc.)
 Contacts           Datos sobre los contactos de tu agenda
 MediaStore         Ficheros multimedia como audio, vídeo e imágenes.
 Settings           Configuración del dispositivo.
Hacer nuevos Content Providers

   Utilizar un sistema de almacenamiento de
    datos (usualmente en ficheros o usando
    SQLite).
   Crear una clase que herede de
    ContentProvider.
       Definiendo una serie de métodos: getType,
        onCreate, query, insert, delete y update.
   Declarar el proveedor de contenido en el
    fichero AndroidManifest.xml de nuestra
    aplicación.
Opciones generales de conexión

   Establecer red preferida.
   Activar o desactivar un tipo de red.
   ¿Falló la conexión a la red preferida?
   ¿Hay conexión?
   ¿Por qué falló la conexión?
Opciones específicas de WiFi

   ¿Está el dispositivo habilitado?
   Habilitar el dispositivo.
   Obtener lista de redes configuradas.
   Conectar a una red.
   Obtener información de la conexión.
   Escanear todos los puntos de acceso.
   Consultar el resultado del escaneo.
Conclusiones

   Está diseñado para facilitar el desarrollo a terceros.
   Nos ofrece bibliotecas para trabajar con dispositivos que
    tradicionalmente no se incluían en equipos móviles.
   Facilita la integración entre aplicaciones.
   Ofrece un alto nivel de abstracción frente al hardware
    nunca visto antes.
   Al estar basado en Linux ofrece un soporte robusto y
    fiable.
   Que esté mantenido por la Open Handset Alliance ofrece
    garantías de perdurabilidad en el tiempo.

Más contenido relacionado

Similar a Android: desarrollo de aplicaciones

visual fox pro
visual fox provisual fox pro
visual fox pro
Diana Cristina Echeverry
 
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRACONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
Pablo Contramaestre
 
Sistemas operativos microsoft windows
Sistemas operativos microsoft windowsSistemas operativos microsoft windows
Sistemas operativos microsoft windows
WritePen
 
Iphone
IphoneIphone
Iphone
Joel Lara
 
eyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicacióneyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicación
Jose Luis Lopez Pino
 
Introducción a Mobile Processing
Introducción a Mobile ProcessingIntroducción a Mobile Processing
Introducción a Mobile Processing
dennysreg
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!
Ricard Luquero
 
Configuracion y administracion de windows
Configuracion y administracion de windowsConfiguracion y administracion de windows
Configuracion y administracion de windows
Agustin Valdez
 
MobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a AndroidMobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a Android
Alberto Ruibal
 
Trabajo de Redes
Trabajo de RedesTrabajo de Redes
Trabajo de Redes
rizitos1995
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
guestc73edb
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
guestb14e9d
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
guest76d280
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
guestb14e9d
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
guestc3d8fe
 
Tipos de sistemas operativos
Tipos de sistemas operativosTipos de sistemas operativos
Tipos de sistemas operativos
leinyrivera
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"
Alberto Ruibal
 
Informatica jeronimo andres
Informatica jeronimo andresInformatica jeronimo andres
Informatica jeronimo andres
andrestf
 
principios básicos
principios básicosprincipios básicos
principios básicos
Nina Caraguay
 
Christian
ChristianChristian
Christian
Jair Armando
 

Similar a Android: desarrollo de aplicaciones (20)

visual fox pro
visual fox provisual fox pro
visual fox pro
 
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRACONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
CONFIGURACIONES TECNICAS DE DE LOS CBIT TACHIRA
 
Sistemas operativos microsoft windows
Sistemas operativos microsoft windowsSistemas operativos microsoft windows
Sistemas operativos microsoft windows
 
Iphone
IphoneIphone
Iphone
 
eyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicacióneyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicación
 
Introducción a Mobile Processing
Introducción a Mobile ProcessingIntroducción a Mobile Processing
Introducción a Mobile Processing
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!
 
Configuracion y administracion de windows
Configuracion y administracion de windowsConfiguracion y administracion de windows
Configuracion y administracion de windows
 
MobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a AndroidMobileCONGalicia Introducción a Android
MobileCONGalicia Introducción a Android
 
Trabajo de Redes
Trabajo de RedesTrabajo de Redes
Trabajo de Redes
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
 
Guia De Usuario
Guia De UsuarioGuia De Usuario
Guia De Usuario
 
Tipos de sistemas operativos
Tipos de sistemas operativosTipos de sistemas operativos
Tipos de sistemas operativos
 
LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"LabAndroid: Taller "Mi Primera Aplicación Android"
LabAndroid: Taller "Mi Primera Aplicación Android"
 
Informatica jeronimo andres
Informatica jeronimo andresInformatica jeronimo andres
Informatica jeronimo andres
 
principios básicos
principios básicosprincipios básicos
principios básicos
 
Christian
ChristianChristian
Christian
 

Más de Jose Luis Lopez Pino

Scheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data ClustersScheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data Clusters
Jose Luis Lopez Pino
 
Distributed streaming k means
Distributed streaming k meansDistributed streaming k means
Distributed streaming k means
Jose Luis Lopez Pino
 
High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)
Jose Luis Lopez Pino
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)
Jose Luis Lopez Pino
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
Jose Luis Lopez Pino
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
Jose Luis Lopez Pino
 
Firefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libresFirefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libres
Jose Luis Lopez Pino
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
Jose Luis Lopez Pino
 
Presentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De CarreraPresentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De Carrera
Jose Luis Lopez Pino
 
Memoria Proyecto Fin de Carrera
Memoria Proyecto Fin de CarreraMemoria Proyecto Fin de Carrera
Memoria Proyecto Fin de Carrera
Jose Luis Lopez Pino
 
Presentacion CUSL nacional
Presentacion CUSL nacionalPresentacion CUSL nacional
Presentacion CUSL nacional
Jose Luis Lopez Pino
 
Resumen del proyecto Visuse
Resumen del proyecto VisuseResumen del proyecto Visuse
Resumen del proyecto Visuse
Jose Luis Lopez Pino
 
Presentacion cusl granadino
Presentacion cusl granadinoPresentacion cusl granadino
Presentacion cusl granadino
Jose Luis Lopez Pino
 
Como hacer un módulo para Visuse
Como hacer un módulo para VisuseComo hacer un módulo para Visuse
Como hacer un módulo para Visuse
Jose Luis Lopez Pino
 
Visuse: resumen del I Hackathon
Visuse: resumen del I HackathonVisuse: resumen del I Hackathon
Visuse: resumen del I Hackathon
Jose Luis Lopez Pino
 
Presentacion Visuse para el Hachathón
Presentacion Visuse para el HachathónPresentacion Visuse para el Hachathón
Presentacion Visuse para el Hachathón
Jose Luis Lopez Pino
 
Desarrollar un módulo para Visuse
Desarrollar un módulo para VisuseDesarrollar un módulo para Visuse
Desarrollar un módulo para Visuse
Jose Luis Lopez Pino
 
Control de versiones y Subversion
Control de versiones y SubversionControl de versiones y Subversion
Control de versiones y Subversion
Jose Luis Lopez Pino
 
Charla Introducción al Diseño Gráfico
Charla Introducción al Diseño GráficoCharla Introducción al Diseño Gráfico
Charla Introducción al Diseño Gráfico
Jose Luis Lopez Pino
 
Introducción a Firefox
Introducción a FirefoxIntroducción a Firefox
Introducción a Firefox
Jose Luis Lopez Pino
 

Más de Jose Luis Lopez Pino (20)

Scheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data ClustersScheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data Clusters
 
Distributed streaming k means
Distributed streaming k meansDistributed streaming k means
Distributed streaming k means
 
High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
 
Firefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libresFirefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libres
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
 
Presentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De CarreraPresentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De Carrera
 
Memoria Proyecto Fin de Carrera
Memoria Proyecto Fin de CarreraMemoria Proyecto Fin de Carrera
Memoria Proyecto Fin de Carrera
 
Presentacion CUSL nacional
Presentacion CUSL nacionalPresentacion CUSL nacional
Presentacion CUSL nacional
 
Resumen del proyecto Visuse
Resumen del proyecto VisuseResumen del proyecto Visuse
Resumen del proyecto Visuse
 
Presentacion cusl granadino
Presentacion cusl granadinoPresentacion cusl granadino
Presentacion cusl granadino
 
Como hacer un módulo para Visuse
Como hacer un módulo para VisuseComo hacer un módulo para Visuse
Como hacer un módulo para Visuse
 
Visuse: resumen del I Hackathon
Visuse: resumen del I HackathonVisuse: resumen del I Hackathon
Visuse: resumen del I Hackathon
 
Presentacion Visuse para el Hachathón
Presentacion Visuse para el HachathónPresentacion Visuse para el Hachathón
Presentacion Visuse para el Hachathón
 
Desarrollar un módulo para Visuse
Desarrollar un módulo para VisuseDesarrollar un módulo para Visuse
Desarrollar un módulo para Visuse
 
Control de versiones y Subversion
Control de versiones y SubversionControl de versiones y Subversion
Control de versiones y Subversion
 
Charla Introducción al Diseño Gráfico
Charla Introducción al Diseño GráficoCharla Introducción al Diseño Gráfico
Charla Introducción al Diseño Gráfico
 
Introducción a Firefox
Introducción a FirefoxIntroducción a Firefox
Introducción a Firefox
 

Último

CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdfCURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
LagsSolucSoporteTecn
 
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajasSlideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
AdrianaRengifo14
 
Uso de las Tics en la vida cotidiana.pptx
Uso de las Tics en la vida cotidiana.pptxUso de las Tics en la vida cotidiana.pptx
Uso de las Tics en la vida cotidiana.pptx
231485414
 
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
KukiiSanchez
 
Herramientas para los abogados, 3 herramientas
Herramientas para los abogados, 3 herramientasHerramientas para los abogados, 3 herramientas
Herramientas para los abogados, 3 herramientas
yessicacarrillo16
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
renzocruz180310
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
jgvanessa23
 
El uso de las TIC's en la vida cotidiana
El uso de las TIC's en la vida cotidianaEl uso de las TIC's en la vida cotidiana
El uso de las TIC's en la vida cotidiana
231458066
 
Plantilla carrier y tecnologia de TIGO.pptx
Plantilla carrier y tecnologia de TIGO.pptxPlantilla carrier y tecnologia de TIGO.pptx
Plantilla carrier y tecnologia de TIGO.pptx
edwinedsonsuyo
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
luiscohailatenazoa0
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
C1B3RWALL La red de cooperación de Madrid.pptx
C1B3RWALL La red de cooperación de Madrid.pptxC1B3RWALL La red de cooperación de Madrid.pptx
C1B3RWALL La red de cooperación de Madrid.pptx
Guillermo Obispo San Román
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
codesiret
 
trabajo monografico sobre el yandex .jim
trabajo monografico sobre el yandex .jimtrabajo monografico sobre el yandex .jim
trabajo monografico sobre el yandex .jim
jhonyaicaterodriguez
 
Plan de racionamiento de energía en Venezuela
Plan de racionamiento de energía en VenezuelaPlan de racionamiento de energía en Venezuela
Plan de racionamiento de energía en Venezuela
Gabrielm88
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptxLA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
pauca1501alvar
 
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdfMODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
SeleniaLavayen
 
Ingeniería en Telemática y ejercicios.pdf
Ingeniería en Telemática y ejercicios.pdfIngeniería en Telemática y ejercicios.pdf
Ingeniería en Telemática y ejercicios.pdf
Camila301231
 

Último (20)

CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdfCURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
CURSO CAMARAS DE SEGURIDAD 2023 FINAL .pdf
 
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajasSlideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
Slideshare: definiciòn, registrarse, presentaciones, ventajas y desventajas
 
Uso de las Tics en la vida cotidiana.pptx
Uso de las Tics en la vida cotidiana.pptxUso de las Tics en la vida cotidiana.pptx
Uso de las Tics en la vida cotidiana.pptx
 
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
Morado y Verde Animado Patrón Abstracto Proyecto de Grupo Presentación de Edu...
 
Herramientas para los abogados, 3 herramientas
Herramientas para los abogados, 3 herramientasHerramientas para los abogados, 3 herramientas
Herramientas para los abogados, 3 herramientas
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
 
El uso de las TIC's en la vida cotidiana
El uso de las TIC's en la vida cotidianaEl uso de las TIC's en la vida cotidiana
El uso de las TIC's en la vida cotidiana
 
Plantilla carrier y tecnologia de TIGO.pptx
Plantilla carrier y tecnologia de TIGO.pptxPlantilla carrier y tecnologia de TIGO.pptx
Plantilla carrier y tecnologia de TIGO.pptx
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
C1B3RWALL La red de cooperación de Madrid.pptx
C1B3RWALL La red de cooperación de Madrid.pptxC1B3RWALL La red de cooperación de Madrid.pptx
C1B3RWALL La red de cooperación de Madrid.pptx
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
 
trabajo monografico sobre el yandex .jim
trabajo monografico sobre el yandex .jimtrabajo monografico sobre el yandex .jim
trabajo monografico sobre el yandex .jim
 
Plan de racionamiento de energía en Venezuela
Plan de racionamiento de energía en VenezuelaPlan de racionamiento de energía en Venezuela
Plan de racionamiento de energía en Venezuela
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptxLA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
LA GLOBALIZACIÓN RELACIONADA CON EL USO DE HERRAMIENTAS.pptx
 
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdfMODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
MODELOS MODERNOS DE TECLADOS Y PANTALLAS.pdf
 
Ingeniería en Telemática y ejercicios.pdf
Ingeniería en Telemática y ejercicios.pdfIngeniería en Telemática y ejercicios.pdf
Ingeniería en Telemática y ejercicios.pdf
 

Android: desarrollo de aplicaciones

  • 1. Android: desarrollo de aplicaciones  Raúl Jiménez Ortega  Nicolás Fernández Valverde  José Luis López Pino
  • 2. Diseño de la interfaz de usuario Existen dos formas de implementar la interfaz:  Procedural: como tradicionalmente se han implementado las interfaces en Java → estilo AWT, SWING, etc.  Declarativa: usando el lenguaje de marcas XML.
  • 4. Servicios basados en localización Tres sistemas intregados:  Localización: ofrece la clase LocationManager para acceder a los sistemas de localización.  Acelerómetro y brújula: se gestiona con el SensorManager y requiere el uso de listeners. Para la carga se usa la función: getSystemService(nombre_del_servicio)
  • 5. Cámara - Configuración  Podemos manipular la configuración:  Frecuencia de previsualización: (setPreviewFrameRate)  Tamaño: (setPictureSize)  Codificación de la imagen: (setPictureFormat)  Etc. Ejemplo: Camera.Parameters parameters = camera.getParameters(); parameters.setPictureFormat(PixelFormat.JPEG); camera.setParameters(parameters);
  • 6. Cámara - Captura private void takePicture() { camera.takePicture(shutterCallback, rawCallback, jpegCallback); }  shutterCallBack: se lanza justo cuando se cierra el disparador de la cámara.  rawCallBack: recibe la imagen sin codificar tras haber sido tomada.  jpegCallBack: recibe la imagen en formato JPEG.
  • 7. Servicios Android  Se ejecutan en segundo plano.  El usuario no interactúa con los servicios, sino que son manejados por las aplicaciones.  Realizan tareas como actualizar Content- Providers o manejar notificaciones.  Por ejemplo se programan como servicio las actualizaciones automáticas para los programas.
  • 8. Gestión de un servicio.  Creación: Sobrecargamos los siguientes métodos de la clase services:  OnCreate : Acciones cuando se crea el servicio.  OnBind : Acciones para ligarlo a una aplicación.  OnStart : Acciones cuando se inicia el servicio.  Lanzar el servicio. Dos formas  Explícita: startService(new Intent(MyService.MY_ACTION)); Implícita:startService(new Intent(this,MyService.class));  Pararlo : stopService(new Intent(this, service.getClass()));
  • 9. Hebras  Todos los componentes de la aplicación (incluidos los servicios) corren sobre la hebra principal.  Para evitar que la aplicación se bloquee las operaciones más costosas en tiempo se realizan en hebras de segundo plano.  Se programan en hebras tareas como el manejo de ficheros, transacciones en bases de datos o búsquedas de redes.
  • 10. Reproducción Multimedia  Creamos una instancia de la clase MediaPlayer por cada archivo.  MediaPlayer implementa funciones:  De reproducción: start, stop, pause, seek...  Recuperación de información: nombre, tamaño, tipo...  Límite de instancias de la clase → tenemos que liberar recursos.
  • 11. Grabación Multimedia  Creamos una instancia de MediaRecorder con las opciones pertinentes:  Establecemos la fuente con setAudioSource o con setVideoSource.  Definir el formato de salida con setOutputFormat.  Seleccionar el codificador a utilizar.  Y el fichero de salida.  Con start, stop y release manejamos la grabación.
  • 12. El gestor de notificaciones  Mensaje en la barra de estados.  Icono en la barrra de estados  Iluminar LEDs.  Vibración.  Sonidos.
  • 13. Native Android Content Providers Integración entre aplicaciones Content Provider Datos que ofrece Browser Historial, marcadores y otra información del navegador. CallLog Detalles sobre llamadas (perdidas, duración, etc.) Contacts Datos sobre los contactos de tu agenda MediaStore Ficheros multimedia como audio, vídeo e imágenes. Settings Configuración del dispositivo.
  • 14. Hacer nuevos Content Providers  Utilizar un sistema de almacenamiento de datos (usualmente en ficheros o usando SQLite).  Crear una clase que herede de ContentProvider.  Definiendo una serie de métodos: getType, onCreate, query, insert, delete y update.  Declarar el proveedor de contenido en el fichero AndroidManifest.xml de nuestra aplicación.
  • 15. Opciones generales de conexión  Establecer red preferida.  Activar o desactivar un tipo de red.  ¿Falló la conexión a la red preferida?  ¿Hay conexión?  ¿Por qué falló la conexión?
  • 16. Opciones específicas de WiFi  ¿Está el dispositivo habilitado?  Habilitar el dispositivo.  Obtener lista de redes configuradas.  Conectar a una red.  Obtener información de la conexión.  Escanear todos los puntos de acceso.  Consultar el resultado del escaneo.
  • 17. Conclusiones  Está diseñado para facilitar el desarrollo a terceros.  Nos ofrece bibliotecas para trabajar con dispositivos que tradicionalmente no se incluían en equipos móviles.  Facilita la integración entre aplicaciones.  Ofrece un alto nivel de abstracción frente al hardware nunca visto antes.  Al estar basado en Linux ofrece un soporte robusto y fiable.  Que esté mantenido por la Open Handset Alliance ofrece garantías de perdurabilidad en el tiempo.