16
Intent en Android Emerson Garay www.slidechare.net/emergar www.youtube.com/emergaray

Intent en android

Embed Size (px)

Citation preview

Page 1: Intent en android

Intent en Android

Emerson Garay

www.slidechare.net/emergar

www.youtube.com/emergaray

Page 2: Intent en android

Llamadas entre Actividades

Una aplicación puede contener cero o más actividades(Activity). Cuando una aplicación posee más de una actividad, es bastante frecuente arrancar una de ellas desde otra. Esto se consigue mediante una intención (Intent en inglés).

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 3: Intent en android

Tipos de llamadas con Intent

•Tareas Abstractas:

•Tomar Foto

•Enviar mensaje

Implícitas

•Se indica el componente a lanzar

Explicitas

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 4: Intent en android

Intent

Implícitas

MAP GEO Location

Dial a Call

Launch Website in Webview

Explicitas

Start Broad-cast Receivers

Launch Activity

Start Background-Service

Las Intenciones

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 5: Intent en android

Las Intenciones

Representan la voluntad de realizar una acción o tarea.

Se utilizan cada vez que se quiera:

• Lanzar una actividad: starActivity() y startActivityForResult()

• Lanzar un servicio: starService()

• Lanzar un anuncio de tipo broadcast: sendBroadcast()

• Comunicarnos con un servicio : bindService()

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 6: Intent en android

Partes de un Intent

Nombre del componente:

En las intenciones explicitas se identifica el componente a lanzar, colocando el nombre de la clase.

Acción:

En las intenciones implícitas se pasa una cadena de caracteres que indica la acción. En la clase Intent están definidas una lista de constaste comunes aunque se pueden definir nuevas.

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 7: Intent en android

(2) Partes de un Intent

Extras: Información adicional que será recibida por el componente lanzado. Está formada por un conjunto de pares variable/valor. Estas colecciones de valores se almacenan en un objeto de la clase Bundle. Su utilización ha sido descrita en la sección Comunicación entre actividades. Recordemos cómo se introducían estos valores en un Intent.

i.putExtra("id", "9200123")

i.putExtra("usuario", “egaray");

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 8: Intent en android

Iniciar otra actividad

Intent i = new Intent(this, Act_Matricula.class);

i.putExtra(“id”, identificacion);

starActivity(i);

Se crea el Intent indicando: 1. Desde que Activity se llama con: this 2. A que Activity se va abrir con: Act_Matricula.class

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 9: Intent en android

Iniciar otra actividad

Para lanzar una actividad de forma implícita podemos usar el constructor Intent(String action, Uri uri)

Por ejemplo:

Intent i = new Intent(Intent.ACTION_DIAL, URI.parse("tel:4002849347"));

startActivity(i);

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 10: Intent en android

Constante Componente

a lanzar Acción

ACTION_CALL Actividad Inicializa una llamada de teléfono.

ACTION_EDIT Actividad Visualiza datos para que el usuario los edite.

ACTION_MAIN Actividad Arranca como actividad principal de una tarea. (sin datos de entrada y sin devolver datos)

ACTION_SYNC Actividad Sincroniza datos en un servidor con los datos de un dispositivo móvil.

ACTION_BATTERY_LOW Receptor de

anuncios Advertencia de batería baja.

ACTION_HEADSET_PLUG Receptor de

anuncios Se han conectado o desconectado los auriculares.

ACTION_SCREEN_ON Receptor de

anuncios Se ha activado la pantalla.

ACTION_TIMEZONE_CHANGED Receptor de

anuncios Se cambia la selección de zona horaria.

Acciones Genéricas Intent

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 11: Intent en android

Ejemplos

public void pgWeb(View view) {

Intent i = new Intent(Intent.ACTION_VIEW,

Uri.parse("http://www.androidcurso.com/"));

startActivity(i);

}

public void llamadaTelefono(View view) {

Intent i = new Intent(Intent.ACTION_CALL,

Uri.parse("tel:400849347"));

startActivity(i);

}

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 12: Intent en android

Ejemplos

public void googleMaps(View view) { Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:41.656313,-0.877351")); startActivity(i); } public void tomarFoto(View view) { Intent i = new Intent("MediaStore.ACTION_IMAGE_CAPTURE"); startActivity(i); }

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 13: Intent en android

public void mandarCorreo(View view) {

Intent i = new Intent(Intent.ACTION_SEND);

i.setType("text/plain");

i.putExtra(Intent.EXTRA_SUBJECT, "asunto");

i.putExtra(Intent.EXTRA_TEXT, "texto del correo");

i.putExtra(Intent.EXTRA_EMAIL, new String[] {"egaray\@ingenesys.co"});

startActivity(i);

}

Ejemplos

Page 14: Intent en android

Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 15: Intent en android

Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 16: Intent en android

Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez