|
||
|
|
|
|||||||
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Envio de archivo .json por Bluetooth
Hola,
estoy intentando crear una tarea para enviar un archivo .json por bluetooth entre 2 terminales. El tema del envío de archivos por BT ya lo tengo controlado, para lo cual uso un comando Ejecutar consola con el código: Código:
su am start -a android.intent.action.SEND -t image/jpeg --eu android.intent.extra.STREAM file:///sdcard/DCIM/Camera/1391914473967.jpg Código:
-t image/jpeg Código:
-t application/json Alguien sabe como solucionarlo? Última edición por dj_janker Día 17/04/16 a las 14:12:18. |
|
|
|
#2
|
||||
|
||||
|
Por lo que he visto JSON puede admitir varios Content-Type dependiendo de las circunstancias...
application/json application/javascript application/x-javascript text/javascript text/x-javascript text/x-json Y supongo que también se podría enviar como texto plano, que a fin de cuentas es lo que contiene el archivo.
__________________
Miembro del equipo que promueve el [Subforo de Tasker]
Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino) |
| Los siguientes 2 usuarios han agradecido a WillyWeb su comentario: | ||
|
#3
|
||||
|
||||
|
Por lo que he visto JSON puede admitir varios Content-Type dependiendo de las circunstancias...
application/json application/javascript application/x-javascript text/javascript text/x-javascript text/x-json Y supongo que también se podría enviar como texto plano, que a fin de cuentas es lo que contiene el archivo. ![]() ![]() Mil gracias como siempre
|
| Los siguientes 2 usuarios han agradecido a dj_janker su comentario: | ||
|
#4
|
||||
|
||||
|
Por cierto aprovecho el tema abierto.
Existe alguna manera de "auto aceptar" los archivos enviados por bluetooth por 2 dispositivos emparejados? Es decir, dar algún permiso, para no tener que aceptar cada vez que se envía un archivo entre 2 dispositivos conocidos y emparejados. He estado buscando, pero no veo nada. |
|
#5
|
||||
|
||||
|
Sigo investigando sobre mi anterior mensaje.
Creo que con Autonotification se podría hacer, pero no sé muy bien como funciona este plugin. He intentado crear un Perfil Autonotification Intercept que detecte las notificaciones de la Aplicación Bluetooth (con el texto "Bluetooth: archivo entrante") y luego he creado una tarea Autonotification action con el ID: %antouchaction Con esto conseguía que me mostrara la pantalla de la notificación el archivo entrante, donde se puede aceptar/rechazar su entrada en primer plano. La idea era hacer un input tap en Aceptar para que se descargara. Pero no me acaba de funcionar..... Se aceptan ideas. Saludos. |
|
#6
|
||||
|
||||
|
Sigo investigando sobre mi anterior mensaje.
Creo que con Autonotification se podría hacer, pero no sé muy bien como funciona este plugin. He intentado crear un Perfil Autonotification Intercept que detecte las notificaciones de la Aplicación Bluetooth (con el texto "Bluetooth: archivo entrante") y luego he creado una tarea Autonotification action con el ID: %antouchaction Con esto conseguía que me mostrara la pantalla de la notificación el archivo entrante, donde se puede aceptar/rechazar su entrada en primer plano. La idea era hacer un input tap en Aceptar para que se descargara. Pero no me acaba de funcionar....., hay veces que va y otras que no ![]() Se aceptan ideas. Saludos. |
|
#7
|
||||
|
||||
|
Con Autoinput podrías. Un plugin para Tasker. Se trataria, por ejemplo, y con este plugin, de escoger una accion de este plugin/action/configuración/action: click/Field Type: Text/Field Text: Aceptar, o aceptar, o el texto que te aparezca en el botón que quieres cliquear automáticamente.
|
| Gracias de parte de: | ||
|
#8
|
||||
|
||||
|
Con Autoinput podrías. Un plugin para Tasker. Se trataria, por ejemplo, y con este plugin, de escoger una accion de este plugin/action/configuración/action: click/Field Type: Text/Field Text: Aceptar, o aceptar, o el texto que te aparezca en el botón que quieres cliquear automáticamente.
![]() Muchísimas gracias. Conocía de pasada Autoinput pero nunca había podido sacarle rendimiento por falta de conocimiento. Ahora con esta función que me has ayudado a a conocer creo que le voy a sacar bastante rendimiento Enviado desde mi JY-S3 mediante Tapatalk |
| Gracias de parte de: | ||
|
#9
|
||||
|
||||
|
Por cierto, no se si has caído en un detalle importante. Quizas podria darse el caso de que hicieses clic involuntariamente sobre el botón "cancelar" cuando se está realizando la tarea de enviar archivo y se muestra el aviso para aceptar o cancelar...
Te sugiero que la automatización de aceptar la hagas de forma oculta, en ese caso. Te pongo un ejemplo de una tarea que tengo asignada a un botón. La tarea ejecuta dos app para limpiar y liberar memoria RAM. Ademas, y finalmente, cierra todas las aplicaciones en segundo plano, informandote por último de la RAM liberada. Observa sobretodo que nada mas empezar a realizarse la tarea "oculto" a la vista todo lo que esta tarea hace (no veo ninguna de las apps que se ejecutan, ni el cierre de las aplicaciones en segundo plano). Para ello uso una escena como capa superpuesta que no es posible destruir mientras se ejecutan las app. Muy importante destruirla al final de la tarea con la acción "destruir escena". Sino, puedes liarla... OptimizandoPopup (64) A1: Crear Escena [ Nombre:OptimizandoPopup ] A2: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Optimizando Texto Establecer:Verdadero Tiempo de animación (ms):0 ] A3: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Espere Texto Establecer:Verdadero Tiempo de animación (ms):0 ] A4: Mostrar Escena [ Nombre:OptimizandoPopup Mostrar como:Capa Superpuesta Posición Horizontal:100 Posición Vertical:100 Animación:Ninguno Mostrar Botón Salida:Apagado Continuar tarea inmediatamente:Encendido ] A5: Esperar [ MS:500 Segundos:0 Minutos:0 Horas:0 Días:0 ] A6: Rotate [ Configuración:Retrato Paquete:nl.fameit.rotate Nombre:Rotate Cuenta atrás (segundos):0 ] A7: Cargar aplicación [ Aplicación:History Eraser Pro Datos: Excluir de aplics. recientes:Apagado Always Start New Copy:Apagado ] A8: Destruir Escena [ Nombre:InformacionPopup ] A9: Esperar [ MS:0 Segundos:7 Minutos:0 Horas:0 Días:0 ] A10: AutoInput Action [ Configuración:Type: Text Value: Limpiar seleccion Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A11: Esperar [ MS:0 Segundos:3 Minutos:0 Horas:0 Días:0 ] A12: AutoInput Global Action [ Configuración:Action: Back Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A13: Cargar aplicación [ Aplicación:All-In-One Toolbox Datos: Excluir de aplics. recientes:Apagado Always Start New Copy:Apagado ] A14: Esperar [ MS:0 Segundos:7 Minutos:0 Horas:0 Días:0 ] A15: AutoInput Action [ Configuración:Type: Point Value: 270,1485 Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A16: Esperar [ MS:0 Segundos:15 Minutos:0 Horas:0 Días:0 ] A17: AutoInput Action [ Configuración:Type: Point Value: 500,1700 Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A18: Esperar [ MS:0 Segundos:7 Minutos:0 Horas:0 Días:0 ] A19: AutoInput Global Action [ Configuración:Action: Back Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A20: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A21: AutoInput Action [ Configuración:Type: Point Value: 550,1485 Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A22: Esperar [ MS:0 Segundos:10 Minutos:0 Horas:0 Días:0 ] A23: AutoInput Action [ Configuración:Type: Text Value: Detener seleccionadas Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A24: Esperar [ MS:0 Segundos:5 Minutos:0 Horas:0 Días:0 ] A25: AutoInput Global Action [ Configuración:Action: Back Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A26: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A27: AutoInput Global Action [ Configuración:Action: Back Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A28: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A29: AutoInput Global Action [ Configuración:Action: Back Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A30: Esperar [ MS:0 Segundos:2 Minutos:0 Horas:0 Días:0 ] A31: AutoInput Global Action [ Configuración:Action: Recent Apps Paquete:com.joaomgcd.autoinput Nombre:AutoInput Global Action Cuenta atrás (segundos):20 ] A32: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A33: AutoInput Action [ Configuración:Type: Point Value: 500,1500 Action : Click Paquete:com.joaomgcd.autoinput Nombre:AutoInput Action Cuenta atrás (segundos):20 ] A34: Esperar [ MS:0 Segundos:5 Minutos:0 Horas:0 Días:0 ] A35: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Espere Texto Establecer:Falso Tiempo de animación (ms):0 ] A36: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A37: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Optimizando Texto Establecer:Falso Tiempo de animación (ms):0 ] A38: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A39: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Optimizado Texto Establecer:Verdadero Tiempo de animación (ms):0 ] A40: Esperar [ MS:0 Segundos:3 Minutos:0 Horas:0 Días:0 ] A41: Establecer variable [ Nombre:%Memf A:%MEMF Calcular:Apagado Añadir:Apagado ] A42: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Optimizado Texto Establecer:Falso Tiempo de animación (ms):0 ] A43: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A44: Visibilidad del Elemento [ Nombre Escena:OptimizandoPopup Coincidir Elemento:Memoria RAM Libre Texto Establecer:Verdadero Tiempo de animación (ms):0 ] A45: Esperar [ MS:0 Segundos:3 Minutos:0 Horas:0 Días:0 ] A46: Bloqueo sistema A47: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ] A48: Destruir Escena [ Nombre:OptimizandoPopup ] A49: Rotate [ Configuración:Automático forzado Paquete:nl.fameit.rotate Nombre:Rotate Cuenta atrás (segundos):0 ] A50: Rotate [ Configuración:Automático Paquete:nl.fameit.rotate Nombre:Rotate Cuenta atrás (segundos):0 ] Saludos |
| Los siguientes 2 usuarios han agradecido a emiegna su comentario: | ||
![]() |
Estás aquí
|
||||||
|
||||||