Acceder

Ver la Versión Completa : [ TUTORIAL ] [Perfil] Descargar y compartir imágenes


maid450
14/07/14, 14:01:50
Bueno, tras un par de meses retirado del subforo vuelvo con un pequeño perfil que me he montado para automatizar la descarga de una imágen para despues compartirla.

Personalmente me pasa a menudo encontrar una imágen por internet y querer enviarla a algún grupo de whatsapp o similar, y si compartes directamente desde el navegador lo que se comparte es la url, con lo que si lo que quieres es enviar directamente la imágen tienes que descargarla, buscarla con un explorador de archivos y compartirla.
Este perfil permite hacerlo de forma automática, y de paso gestiona el borrado de lo que se vaya compartiendo para que no se acumule en el disco.

Requisitos:

AutoShare (https://play.google.com/store/apps/details?id=com.joaomgcd.autoshare) (la versión de pago o la gratuita siendo root)


1. Configuración de Autoshare
En autoshare ir a "Manage Commands" y darle al "+", poner el nombre que se quiera al comando nuevo. Yo he puesto "DownloadAndShare", pero se puede poner cualquier cosa.

2. Crear el perfil en Tasker
- Contexto: Evento->Plugin->Autoshare

Command filter: El comando que hemos creado antes
Text filter: .*?https?://.*? (sin espacios antes, despues o en medio)
Use Regex: activo

- Tarea:

A1: Establecer variable [ Nombre:%destfile A:/sdcard/Download/tmp.jpg Calcular:Apagado Añadir:Apagado ]
A2: Ejecutar consola [ Comando:rm %destfile Cuenta atrás (segundos):0 Usar Root:Apagado Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: Continuar Tarea Tras Error:Encendido ]
A3: Buscar y Reemplazar Contenido de Variable [ Variable:%astext Buscar:(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/? Ignore Case:Apagado Multi-Line:Apagado One Match Only:Encendido Almacenar Coincidencias En:%url Reemplazar Coincidencias:Apagado Reemplazar Con: ]
A4: HTTP Get [ Servidor:Puerto:%url1 Ruta: Atributos: Cookies: Cuenta atrás:90 Tipo Mime:image/* Archivo de salida:%destfile Trust Any Certificate:Apagado ]
A5: AutoShare [ Configuración:App: AutoShare Action: Share MimeType: image/* File: file://%destfile Paquete:com.joaomgcd.autoshare Nombre:AutoShare Cuenta atrás (segundos):10 ]

3. Uso
En un navegador, al abrir una imágen (OJO, ha de ser una imágen directamente, no una página web que contiene una imágen: seguramente la url acabará en .jpg, .gif o similar. Para abrir una imágen de una web, se puede hacer click largo sobre ella y darle a "abrir imágen") al darle a compartir saldrá una lista de las aplicaciónes que permiten compartir contenido, de la lista hay que elegir "Autoshare Command".
Después, si tenemos varios comandos definidos (si usamos autoshare para más cosas) nos saldrá una lista y elegimos el que hemos creado para esto, si es nuestro único comando lo usará automáticamente y no preguntará.
Eso debería lanzar la tarea, y en poco rato (cuando haya bajado la imágen) se nos volverá a presentar la lista de aplicaciones para compartir, y ahí si deberemos elegir la app a la que queremos enviar la imágen.

4. Personalizar
- En la primera acción se puede poner como valor de %destfile lo que se quiera, es la ruta completa con nombre y todo de la imágen que se descargará al teléfono.
En cada ejecución borrará este fichero si existe (de una ejecución anterior) y lo creará de nuevo con la imágen a compartir
- Si no teneis la versión de pago de AutoShare no os dejará compartir un fichero, solo textos, pero parece que hay una alternativa para los usuarios root, una acción de ejcutar consola con este comando:
am start -a android.intent.action.SEND -t image/* --eu android.intent.extra.STREAM file://%destfile --grant-read-uri-permissionpor supuesto marcando "Ejecutar como root".
Esto no lo he probado, ya que sí tengo la versión de pago de AutoShare.

Ya comentáis si lo probais si teneis algún problema o sugerencia. :cucu:

Caravantes
14/07/14, 17:08:43
tras un par de meses retirado del subforo vuelvo con un pequeño perfil

Que alegría por leerte nuevamente. Te hemos echado de menos, señor hijo pródigo.
Gracias por ese perfil, muy interesante.

mlesir
14/07/14, 22:23:39
Bienvenido otro vez! Que alegría. Caravantes el hijo pródigo volvió con una mano delante y otra detrás, Maid vuelve publicando un perfil, que tío más grande. ;)
Por cierto Maid te deje un privado si puedes me contestas.
Un abrazo.

Jusss
15/07/14, 01:45:11
Yo una pregunta en un post, jaja todos le pedimos. Que buen regreso

Jusss
19/07/14, 18:57:09
Maid tengo un problema con la tarea al clikear en la imagen, poner compartir y elegir el comando de Autoshare que cree me aparece "only 1 comand" "recived Share:" con una lista de cosas, y se queda ahí, nunca descarga la imagen ni me da las opciones con que programa compartirla, esta es la imagen que hice la prueba, probé varias imagenes siempre con el mismo resultado tras poner compartir y elegir ya no aparece nada mas. Tengo la version de Pago.

http://m.flikie.com/ImageData/WallPapers/4295f72874144e64a40b666ca340f318.jpg

Copio la tarea por si tiene algún fallo que se me escapa pero la revise varias veces.

Perfil: Compartir Imágenes (545)
Evento: AutoShare [ Configuración:Command: DownloadAndShare
Sender: all
Subject: all
Text: .*?https?://.*? (regex)
Image: all ]

Entrada: DownloadAndShare (544)
A1: Establecer variable [ Nombre:%destfile A:/sdcard/Download/tmp.jpg Calcular:Apagado Añadir:Apagado ]
A2: Ejecutar consola [ Comando:rm %destfile Cuenta atrás (segundos):0 Usar Root:Apagado Almacenar Salida En: Almacenar Errores En: Almacenar Resultado en: Continuar Tarea Tras Error:Encendido ]
A3: Buscar y Reemplazar Contenido de Variable [ Variable:%aset Buscar:(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/? Ignore Case:Apagado Multi-Line:Apagado One Match Only:Encendido Almacenar Coincidencias En:%url Reemplazar Coincidencias:Encendido Reemplazar Con:] ]
A4: HTTP Get [ Servidor:Puerto:%url1 Ruta: Atributos: Cookies: User Agent: Cuenta atrás:90 Tipo Mime:image/* Archivo de salida:%destfile Trust Any Certificate:Apagado ]
A5: AutoShare [ Configuración:App: AutoShare
Action: Share
MimeType: image/*
File: //%destfile Paquete:com.joaomgcd.autoshare Nombre:AutoShare Cuenta atrás (segundos):10 ]

maid450
23/07/14, 10:08:39
Hola Jusss, me parece que el problema está en la A3, la variable en la que buscar has puesto %aset, y debe ser %astext
Despues de esta acción si sigue sin funcionar pon una acción flash mostrando el contenido de %url1 y asegurate que muestra la url de ejemplo (http://m.flikie.com/ImageData/WallPapers/4295f72874144e64a40b666ca340f318.jpg)

PD: acabo de ver tambien que en A5 pone File: //%destfile, y debe ser file://%destfile sin espacios.

Jusss
02/08/14, 16:23:21
Hola Jusss, me parece que el problema está en la A3, la variable en la que buscar has puesto %aset, y debe ser %astext
Despues de esta acción si sigue sin funcionar pon una acción flash mostrando el contenido de %url1 y asegurate que muestra la url de ejemplo (http://m.flikie.com/ImageData/WallPapers/4295f72874144e64a40b666ca340f318.jpg)

PD: acabo de ver tambien que en A5 pone File: //%destfile, y debe ser file://%destfile sin espacios.
Graciasss como siempre tenias razón, era la variable %astext, corregida y funciona genial. Que otras cosas se pueden hacer con autoshare todavía no lo puedo entender mucho para que sirve

maid450
04/08/14, 09:41:51
Graciasss como siempre tenias razón, era la variable %astext, corregida y funciona genial. Que otras cosas se pueden hacer con autoshare todavía no lo puedo entender mucho para que sirve
Pues como casi todos los plugins de joao, por si solo no vale para nada, depende de las ideas que tengas para usarlo.

En principio tiene 2 posibles usos, o bien poder compartir desde cualquier app a autoshare para que tasker pueda hacer lo que quieras con los datos que has intentado compartir, o como acción para que Tasker comparta con otras apps, y por compartir en realidad me refiero a enviar intents de forma algo más completa que la funcion nativa "Enviar intent" de Tasker, ya que recordemos que la acción "compartir" de android no hace más que enviar un intent. De hecho, en esta página (http://joaoapps.com/autoshare/intents/) se pueden importar intents para usar en autoshare y poder por ejemplo crear notas de evernote, hacer busquedas en google now, etc.

Este perfil por ejemplo hace uso de ambas cosas, al compartir un url de una imágen con autoshare este dispara un perfil de Tasker que extrae la url de la imágen, la descarga y usa autoshare para compartir la imágen ya descargada con la app que quieras.
Otro uso que se me ocurrió pero que no llegué a terminar fue hacerme una especie de agenda de "puntos de interés" que al compartir una ubicación desde google maps con autoshare me permitiera darle un nombre y la almacenara en una base de datos interna, y luego, mediante escenas poder ver los puntos de interés almacenados, abrir el navigation hacia ellos, editarlos, borrarlos etc... pero no llegué a hacer mucho.