En alguna ocasión, tendrás que crear una aplicación en app inventor en la que quieras mandar fotos y videos a otras aplicaciones instaladas en el teléfono. APP Inventor nos ofrece el componente no visible Sharing, que nos permite compartir de una manera sencilla tanto texto como foto. En este articulo vamos a ver como compartir fotos y texto con el componente Sharing.
El componente Sharing es un componente no visible que permite compartir archivos y / o mensajes entre su aplicación y otras aplicaciones instaladas en un dispositivo. El componente mostrará una lista de las aplicaciones instaladas que pueden manejar la información proporcionada y permitirá al usuario elegir una con la que compartir el contenido, por ejemplo, una aplicación de correo, una aplicación de red social, una aplicación de mensajes de texto, etc.
Diseño de nuestra app
Para el diseño de nuestra app para compartir archivos y texto con Sharing, se ha utilizado una serie de disposiciones verticales y horizontales donde se han dispuesto una serie de botones cada uno con un texto descriptivo de la acción que va a tomar. También tendremos una disposición oculta o no visible que solo se mostrara cuando nuestro usuario tenga que escribir texto en nuestra app. Y por supuesto un componente no visible Sharing y dos componentes cámara que utilizaremos en nuestro ejemplo.
Como el objetivo de este artículo no es el de mostraros como diseñar la app si no el uso del componente Sharing, no vamos a profundizar en el tema. No obstante podréis como siempre descargar el proyecto AIA desde aquí.
programando la lógica de nuestra App
Para programar nuestra app para compartir archivos y texto con Sharing, vamos a necesitar una variable global que guarde el texto introducido por el usuario, la vamos a nombrar con el nombre de «Texto» y la vamos a inicializar con un bloqué de texto vacío.
Ahora vamos a programar el botón para enviar texto. Lo que haremos es que cuando se pulse el botón de enviar texto, se visualice la disposición vertical que contiene la caja de texto y el botón de enviar. El botón que utilizaremos nos servirá tanto para el envió de texto y para el envió de texto y foto, por lo tanto, cambiaremos el texto del botón según la opción pulsada. De esta manera cuando pulsemos al botón de enviar texto, cambiaremos el texto del botón «BtnEnviar», haremos visible la disposición vertical que lo contiene y pondremos el foco en la caja de texto donde el usuario introducirá el texto que quiera enviar.
Vamos a seguir añadiendo lógica a los demás botones. Cuando pulsemos al botón de enviar foto lo único que haremos es llamar al componente, «Cámara1».
Esto nos abrirá la cámara del teléfono. Después de tomar la foto que queramos enviar, solo tendremos que llamar al método de nuestro componente no visible compartir archivo, con la imagen en cuestión, y nos ayudaremos con el bloque de la cámara «DespuesDeTomarFoto».
Ahora vamos a dar lógica a nuestro último botón, el que compartirá texto y archivo a la vez. para ello cuando se pulse el botón de enviar foto y texto, haremos que se visualice la disposición vertical que contiene la caja de texto y el botón de enviar. Cambiaremos el texto del botón por el texto «Texto para foto». Haremos visible la disposición vertical que lo contiene y pondremos el foco en la caja de texto donde el usuario introducirá el texto que quiera enviar.
Ahora vamos a dar lógica al botón «BtnEnviar» este se tiene que comportar de diferente manera si solo queremos mandar texto o si mandamos texto y foto. Lo que haremos es comprobar el texto que contiene el botón. Si este texto es «Texto para foto», lo que haremos es meter en nuestra variable global el texto que contiene la caja de texto y llamar a la Cámara 2 para que tome la foto.
Si por el contrario el texto del botón es distinto al anterior, solamente compartiremos el mensaje que contenga la variable global, ocultaremos la disposición vertical que contiene el botón, y borraremos el contenido de la caja de texto.
Bien ya estamos terminando, solo nos queda por hacer la lógica de después de tomar la foto de la cámara 2. Después de tomar la foto compartiremos tanto la foto como el texto almacenado en la variable global. Cambiaremos el testo del botón «btnEnviar» y dejaremos el campo de texto vacío.
Bien solo queda comprobar el funcionamiento de nuestra aplicación y como veras tanto si solo quieres enviar texto o foto e incluso ambas cosas nuestra aplicación nos mostrara distintas opciones, según las aplicaciones instaladas en nuestro dispositivo. de esta manera podremos compartir archivos creados en nuestra aplicación.
Si quieres dudas no dudes en dejar un comentario si quieres recibir notificaciones en tu correo electrónico de nuevas publicaciones en el blog no dudes en suscribirte y sin mas me despido hasta un nuevo articulo.