|
||
|
|
|
|||||||
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Nuevo perfil ahorro batería
Hola buenas, pues como me encontre por ahí el comando para ejecutar con tasker el perfil de ahorro bateria de android 5, que según he visto ahorra realmente bastante, se me ha ocurrido hacerme a su vez otro perfil de tasker para aprovecharlo, os lo transcribo, pero me ha surgido un problema (como siempre).
La idea ya es conocida, pero intento que en vez de desactivar datos etc. se active el modo ahorro mencionado, entonces si apago pantalla se activa modo ahorro, a los 10 minutos se desactiva 1 minuto y recibo las notificaciones oportunas y vuelta a modo ahorro. el problema viene que he hecho un ¿bucle? (no estoy seguro si lo es propiamente dicho) y no soy capaz de que cuando enciento la pantalla se detenga el bucle y se desactive el modo ahorro. El perfil es este: Estado pantalla apagada: 1. Ejecutar consola, comando: "settings put global low_power 1" 2. Esperar 10 minutos 3. Ejecutar consola, comando: "settings put global low_power 0" 4. Esperar 1 minuto 5. Si, pantalla apagada (tengo la variable definida) 6. ir a la acción numero 1 7. Fin Si Se que no está bien hecho y que debe ser muy fácil, pero en un par de días me voy de viaje y me vendría muy bien tenero listo, y no voy a tener tiempo para dedicarle y hacerlo en condiciones, por eso os pido una ayudita. Gracias y saludos!!! |
|
|
|
#2
|
||||
|
||||
|
Puesto que lo que lanza tu tarea es un estado puedes poner una tarea de salida que se ejecutará cuando la pantalla deje de estar apagada. Si pones nombre a tu tarea actual (entrada del perfil) la podrás detener desde la tarea de salida y desactivar el ahorro de energía
![]() PD: En mi Tasker ese estado se llama "Estado Pantalla" con valores si/no. |
|
#3
|
||||
|
||||
|
Hola Willy, claro eso es lo primero que hice, pero no funcionó, por eso digo que está mal el perfil, incluso cuando desactivo el perfil se sigue ejecuntando el "bucle" y tengo que matar la tarea para que pare.
Estoy intentando lo que he visto en otros perfiles, pantalla apagada+repetir cada 10 minutos, pero no funciona tampoco, creo que logro pillar lo de repetir cada 10 minutos. |
|
#4
|
||||
|
||||
|
Haz lo mismo que he hecho yo antes de responderte...
Crea un perfil con "Estado Pantalla" y valor "no". En la entrada pones un sonido y en la salida pones otro sonido diferente. Sales de Tasker y enciende/apaga la pantalla. Deberías escuchar ambos sonidos alternativamente. Debería funcionar igual con el estado de la variable %SCREEN y los valores on/off. |
|
#5
|
||||
|
||||
|
Me estoy explicando muy mal, cuando se activa el bucle en la tarea de entrada, luego aunque ponga que se detenga la tarea de salida no lo hace, lo que tu propones de los sonidos justo es lo primero que hice para ver si funcionaba la entrada y salida, si pongo solo que se active el modo ahorro en la entrada y se desactive en la salida funciona perfectamente, pero quiero que cuando este pantalla off y ahorro activado, cada cierto tiempo se me sincronicen las notificaciones.
He borrado todo lo hecho por que el bucle no iba bien. |
|
#6
|
||||
|
||||
|
No me ayudad nada ![]() Esa pausa tan larga y la comprobación que hagas en la acción 5 podrían ser los responsables, pero sin ver exactamente lo que has hecho es difícil asegurar nada. ¿Qué variable es esa que tienes definida? Tasker ya tiene una variable global que te dice si la pantalla está encendida/apagada. |
|
#7
|
||||
|
||||
|
Vale, creo que ya he visto lo que está pasando
Mira por dónde una de mis manías con Tasker me han mantenido ajeno a una pequeña limitación... si intentas detener una tarea mientras que está en una acción "Esperar" la tarea no se para hasta que termina la espera. Yo suelo usar la misma tarea en la entrada y la salida. Ajusto sus propiedades para "Abortar la tarea existente" y uso un IF que compara %caller1 con *enter* y *exit* para saber si la llamada a la tarea es desde la entrada o la salid del perfil. Eso sí que detiene la tarea inmediatamente y se salta esa pequeña limitación relacionada con la acción "Esperar". Lo he probado y funciona perfectamente. Intenta hacerlo tú y si te atascas te digo cómo lo he hecho. Suerte
|
|
#8
|
||||
|
||||
|
Yo suelo usar la misma tarea en la entrada y la salida. Ajusto sus propiedades para "Abortar la tarea existente" y uso un IF que compara %caller1 con *enter* y *exit* para saber si la llamada a la tarea es desde la entrada o la salid del perfil. Eso sí que detiene la tarea inmediatamente y se salta esa pequeña limitación relacionada con la acción "Esperar".
![]() |
|
#9
|
||||
|
||||
|
Yo suelo usar la misma tarea en la entrada y la salida. Ajusto sus propiedades para "Abortar la tarea existente" y uso un IF que compara %caller1 con *enter* y *exit* para saber si la llamada a la tarea es desde la entrada o la salid del perfil. Eso sí que detiene la tarea inmediatamente y se salta esa pequeña limitación relacionada con la acción "Esperar".
![]() Edito: No, así no lo has hecho por que no me funciona nada XDD Última edición por Rbcheca Día 09/09/15 a las 07:20:50. |
|
#10
|
||||
|
||||
|
Esto ya lo he contado en otras ocasiones, pero lo explico de nuevo...
Tasker crea automáticamente un array llamado %caller en el que guarda la secuencia de llamadas entre tareas y perfiles. No tienes que hacer nada. No tienes que asignar valores a los elementos de %caller. Todo eso lo hace Tasker automáticamente. La gracia de esto es que si desde una tarea consultas el valor de %caller1 puedes saber quién ha lanzado esa tarea (un perfil, otra tarea, un widget, un botón en una notificación, tú directamente desde la ventana de edición de tareas, etc). Las posibilidades, y el contenido exacto de lo que puede contener %caller está en el manual de usuario. En el caso de que la llamada proceda de un perfil %caller1 contiene las palabras "enter" o "exit" que se corresponden con las tareas de entrada y salida respectivamente. Para el caso que nos ocupa, si dentro de la tarea creas un bloque con "IF %caller1 ~ *enter*" y otro con "IF %caller1 ~ *exit*" ya lo tienes... una única tarea para asignar como entrada y salida de un perfil, y que puede hacer cosas diferentes dependiendo desde dónde sea lanzada. Sólo queda por resolver la cuestión de que la tarea se pudiera estar ejecutando si es llamada una segunda vez. En ese caso tienes que revisar sus propiedades para decidir si abortas la instancia existente o la nueva. En el caso que nos ocupa (un bucle que se tiene que interrumpir) se debe establecer en "Abortar tarea existente" para que la llamada desde la salida/exit interrumpa el bucle iniciado al llamar a la tarea desde la entrada/enter. Jusss, ¿entiendes ahora cómo funciona el sistema? Rbcheca, ¿te he dado suficientes pistas? |
|
#11
|
||||
|
||||
|
pistas no, lo has explicado perfectamente XD
Lástima que hasta la semana que viene no lo podré hacer porque aquí uno que se va de vacaciones Por cierto, todavía lo estoy flipando con el otro perfil que me enseñaste!! Enviado desde mi Nexus 5 mediante Tapatalk Última edición por Rbcheca Día 09/09/15 a las 20:27:25. |
|
#12
|
||||
|
||||
|
Y además, este proyecto se hace en dos minutos ![]() Ahora en serio, disfruta de tu tiempo de descanso. Y no te sientas triste por los que se quedan aquí muertos de envidia
|
![]() |
Estás aquí
|
||||||
|
||||||