Ver Mensaje Individual
  #2  
Viejo 30/10/13, 16:00:32
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por mpiero Ver Mensaje
Por otro lado, también quiero desactivar los perfiles menos el de modo noche en dicha tarea, y he ido uno a uno con todos los perfiles con la accion: Tasker -> Estado del perfil, en la lupa elijo el perfil y en valor Apagado.
Pero, ¿Sabeis si hay alguna manera de indicarle con una sola orden que desactive todos menos uno (el modo noche por ejemplo)?
Sí hay un modo de desactivar todos los perfiles, aunque no es con UNA SOLA ORDEN sino con una secuencia de acciones. Veamos. Según la guía de Tasker, la variable %PENABLED contiene los perfiles habilitados en el momento actual; en concreto contiene la lista de perfiles habilitados -separados por comas-, en orden de creación (los perfiles duplicados sólo aparecen una vez en la lista). Es posible copiar esa información a una variable para trabajarla como si fuera una matriz:

1- Establecer variable %Perfiles a %PENABLED
2- Separar variable %Perfiles, usando una coma (,) como separador.
Con esto obtenemos una matriz %Perfiles() con los nombres de cada perfil que estaba habilitado.
3- For variable %perfil items %Perfiles()
4- Estado del Perfil %perfil Desactivar Si %perfil es distinto a Noche
5- Fin-For

Luego, para volver a habilitarlos... lamentablemente Tasker no tiene una variable %PDISABLED que contenga la lista de los perfiles deshabilitados. Pero podemos usar la lista de perfiles que anteriormente estaban habilitados, y que habíamos guardado en la matriz %Perfiles(). Es por eso que puse una letra mayúscula al nombre de esa variable, para que fuese variable Global y no se perdiera al terminar la primera tarea. La nueva tarea de rehabilitar perfiles es así de sencilla:
1- For variable %perfil items %Perfiles()
2- Estado del Perfil %perfil Activar Si %perfil es distinto a Noche
3- Fin-For

Ahora mismo solo necesitas una excepción (Noche) porque seguramente tengas pocos perfiles, pero eso puede complicarse en el futuro cuando tal vez tengas más perfiles que no quieras deshabilitar. Eso significaría complicar la tarea metiendo otras condiciones SI-IF (una para cada exepción adicional). Pero piensa que puedes añadir al planteamiento anterior una leve modificación para considerar más perifles que deban ser excepciones. Hazte una variable %Pexcepciones que incluya los nombres de todos los perfiles que no deban ser desabilitados, separados por comas. De momento solo tienes uno así que %Pexcepciones será igual a ",Noche,". El el futuro puedes añadir ahí más nombres de otros perfiles que no quieras deshabilitar: ",Noche,Urgencias,Despertador,"

Y luego sustituyes la acción 4 por
4- Estado del Perfil %perfil Desactivar Si %Pexcepciones no coincide con *%perfil*
Con eso, en una sola acción salvas todas las excepciones sin cambiar nada de la tarea.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Gracias de parte de: