Una opción que podemos hacer con App Inventor y que me ha parecido muy interesante es la de compartir. En esta entrada voy a explicar de manera muy básica cómo compartir archivos almacenados en nuestro dispositivo con otra app que tengamos instalada y que sirva para poder enviar contenido. El ejemplo que voy a poner será un botón que al pulsarlo me permitirá elegir con qué aplicación voy a compartir archivos, en este caso utilizaré un archivo con nombre específico para la demostración.

1.- El primer paso es muy sencillo: sacaremos a nuestro diseñador de pantalla los elementos que vamos a utilizar, en mi caso un botón y un componente “compartir”. Este nuevo componente lo podemos encontrar en la sección “Social”.

2.- Cambiamos el texto del botón a “Compartir archivo” para darle un poco de sentido al ejemplo.

Compartir archivo - diseñador

Compartir archivo – diseñador

3.- Ahora ya podemos pasar al editor de bloques. Utilizando el bloque “cuando boton1.clic ejecutar” haremos que al pulsar el botón se produzca una acción. A este bloque le añadiremos uno llamado “llamar compartir1.CompartirArchivo” al que le podemos añadir como texto la ruta y nombre del archivo que queremos compartir.

Quedaría de esta manera:

Compartir archivo - bloques

Compartir archivo – bloques

Aunque este ejemplo es muy básico, se puede aplicar a muchos casos. Un ejemplo sería utilizarlo en la entrada anterior que escribí para poder compartir el archivo de sonido que hemos grabado.

 

17 Thoughts on “Compartir archivos en App Inventor

  1. Hola!! Enhorabuena por el blog, me está siendo muy útil para empezar con este programa. Estoy intentando programar un formulario muy sencillo pero no logro hacerlo y sé que es muy fácil ¿me podrías ayudar? Si me dices donde puedo enviarte mi idea te lo envío. Muchas gracias!

  2. dober on 29 febrero, 2016 at 23:13 said:

    Hola Iker.
    Estoy intentando crear una app que tras haber seleccionado dos archivos los envíe por email a una dirección concreta.

    He conseguido por un lado anexar un archivo a un correo con el bloque compartir, pero querría que en el mismo correo anexara dos archivos. No lo consigo.

    Por otro lado he conseguido ( a través de un activitystarter) crear un mail con una dirección de destino predeterminada, un asunto y un texto con la acción android,intent,action.VIEW

    Lo que querría es unir todo lo anterior. ¿es posible?

    • Iker on 1 marzo, 2016 at 19:43 said:

      Hola buenas dober,

      Podrías enviarme pantallazos de los bloques que tienes? si no es molestia claro. Podrían ayudarme a entender mejor tu problema y poder echarte una mano. Mándamelos por email.

      Gracias y saludos!

  3. dober on 1 marzo, 2016 at 22:15 said:

    Buenas noches Iker, a que dirección te lo envio?

  4. Hola!!

    No he encontrado nada que me sirva y creo yo que debería ser posible:

    ¿Cómo envío un archivo a mi servidor PHP+MYSQL desde una app de AI2?

    Me cuesta creer que no haya manera pero no la he hallado.

  5. Conrado Rodriguez on 28 diciembre, 2016 at 18:06 said:

    Hola Iker:

    Gracias por la información.

    Me gustaría saber si puedes ayudarme. Estoy creando una aplicación. No se como hacer para acceder a un archibo de word .docx y que me deje editarlo.

    Lo lanzo con el ActivitY Starter, me aparece en la aplicación correctamente. pero no puedo editarlo. solo me permite dibujar lineas sobre el o seleccionar y compartir fragmentos.

    Un saludo.

    • Iker on 8 enero, 2017 at 10:41 said:

      Hola Conrado,

      Para editar archivos de word deberás tener instalada la aplicación de Google Docs para editar documentos de office igual que tiene en modo web. Yo creo que con la función de ActivityStarter podrás lanzar esa aplicación y editar sin problemas. Prueba a ver y me dices, ok?

      Gracias y perdón por el retraso.

      Saludos!

  6. Matias on 20 enero, 2017 at 2:51 said:

    Hola como estas? Realmente es muy util tu post. Estoy empezando con app inventor y tengo un problema: estoy armando una aplicacion que deberia permitirle a un tipo de usuarios (vendedores) compartir un archivo X con un comprador en particular (no visible al resto de los compradores. Crees que es posible hacer esto? Puedes darme una mano? Si funciona tu aporte me comprometo a compartirte el resultado.
    Saludos y gracias

    • Iker on 21 enero, 2017 at 14:23 said:

      Hola Matias,

      Necesitaría más información sobre el funcionamiento de la app que estas creando. En este post hablo sobre compartir archivos a cualquier persona utilizando otras apps como medio de transmisión, lo cual cubre las necesidades que tienes porque cada usuario lo comparte con quien quiera. Si no te sirve necesitaría saber por qué.

      Si me puedes enviar más detalles al email te ayudaré en lo que pueda: ivillarroel.programarapps@gmail.com

      Saludos!

  7. Ingrid on 7 febrero, 2017 at 7:40 said:

    Hola Iker

    Me podrías ayudar? Quiero enviar una nota de voz por correo, se puede?, me ayudas?

    Saludos y gracias

  8. Ingrid on 7 febrero, 2017 at 7:59 said:

    Hola Iker

    Formulé mal mi problema anteriormente.
    Quiero enviar una nota de voz por correo pero a través de uno ya establecido en la misma app, es decir que al presionar un botón “Enviar correo” este no me dirija a otra app como la de gmail, hotmail, etc sino que se envíe directamente la nota de voz. Me ayudas?

    Saludos y gracias

    • Iker on 7 febrero, 2017 at 22:05 said:

      Hola Ingrid,

      Actualmente appInventor no dispone de una manera sencilla de hacer lo que planteas.
      Por un lado te permite la opción de compartir archivos entre otras aplicaciones como por ejemplo gmail, etc. con el que podrías enviar por email un fichero.
      Por otro lado tiene una opción para enviar emails utilizando “ActivityStarter” pero sin poder adjuntar archivos, es decir, solamente texto plano.

      Hay mucha comunidad detrás de estos temas y he visto que están creando extensiones para appInventor. Pequeñas funcionalidades que ayudan a cubrir las necesidades de muchos que intentamos hacer una app. Esto no es oficial por lo que no te aseguran que funcione correctamente en todas las versiones de los dispositivos móviles pero igual puedes echar un vistazo por si te sirve de algo. Te indico el enlace a una extensión para enviar email con archivos adjuntos.

      http://puravidaapps.com/mail.php

      Siento no serte de gran ayuda. Gracias por escribir de todas formas.

      Saludos!

  9. Luis on 23 mayo, 2017 at 17:53 said:

    Hola Iker, un saludo desde Ecuador, mi nombre el Luis, llegué hasta aquí por el tema de compartir archivos, estoy creando una aplicación con varias imágenes, algo muy sencillo, una Screen un Canvas, y un pack de imágenes, buscando en la red he logrado realizar un pase de imágenes Swipe, pero lo que no encuentro es como hacer para compartir cada una de estas imágenes, veo que sabes del tema y lo mejor de todo, es que das contestación a todas las preguntas, espero haber sido claro y me puedas ayudar, me despido, felicitándote por esta página que contiene buena info,, para los que estamos iniciando en el mundillo Apps

    • Iker on 3 junio, 2017 at 11:38 said:

      Hola Luis,

      Muchas gracias por tu comentario, me anima mucho =). En este post explico un poco cómo compartir archivos. Ficheros que tengas almacenados en el dispositivo ya que al llamar a la función de compartir deberá obtenerlos de una ruta.
      Entiendo que esas imágenes también estarán almacenadas en una ruta del dispositivo, ¿verdad? Si es así tendrías que hacer algo similar a este post indicando la ruta de cada imagen para compartir. Si por el contrario no están guardadas en ningún lado o desconoces el lugar, te recomiendo que fuerces que cada una se guarde en un sitio para tener un mayor control de los ficheros y de la funcionalidad de la app. Al fin y al cabo se trata de evitar posibles problemas de funcionamiento conociendo perfectamente qué hace la app que programas.

      No se si te he ayudado, espero que si.

      Saludos!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Post Navigation

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies