Tema: [ SOLUCIONADO ] ¿Como contar mis horas de sueño?
Ver Mensaje Individual
  #6  
Viejo 20/02/16, 02:37:02
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
Hola Mx.
La clave del asunto es que Tasker tiene una variable numérica llamada %TIMES, cuyo valor se incrementa cada segundo. Creo recordar que comenzó desde cero en el año 1980, y desde entonces, cada segundo que pasa suma uno al valor anterior. Ahora su valor es del orden de 1135296000, que son los segundos trasncurridos desde hace 36 años.

Necesitas dos tareas. La primera tarea se debe ejecutar cuando vas a dormir. Su objetivo es memorizar el valor que %TIMES tuviera en ese momento, y guardarlo en otra variable que no cambie contínuamente. Se hace mediante una acción del tipo siguiente:

Establecer variable %CierroElOjo a %TIMES.

Con eso ocurre que se traspasa el valor numérico de %TIMES a una variable (global) tuya, que puedes llamar %CierroElOjo o como te parezca.

La segunda tarea es la que necesitas al despertar. Su primera acción debe ser calcular el numero de segundos que han pasado desde que cerraste el ojo hasta que te despiertas, y te conviene guardar el resultado en otra variable que puede llamarse %tiempodormido. Se hace mediante una acción del tipo siguiente:

Establecer variable %tiempodormido a %TIMES - %CierroElOjo, calcular activado.

Con eso ya tienes en la variable %tiempodormido el número de segundos que has estado dormido, resultado de restar del valor actual %TIMES el contenido de %CierroElOjo (que era el valor de %TIMES cuando te acostaste). Fíjate que la variable %tiempodormido la he escrito enteramente en minúsculas porque es una variable local que solo es utilizada en una tarea, no es necesario que sea global porque no va a ser utilizada en tareas distintas.

En esa variable %tiempodormido tendrás un valor que puede ser del tipo 27359, que es el número de segundos que has estado durmiendo. Tendrás que convertir eso a horas + minutos + segundos. En este foro ya tenemos una tarea (subtarea) que hace esa conversión, en
http://www.htcmania.com/showthread.php?t=739807
A) Si quieres dejar la conversión como una subtarea independiente, te conviene leer también este otro post:
http://www.htcmania.com/showthread.php?t=744076
B) Otra opción es que cojas las acciones que convierten los segundos en horas/minutos/segundos y las integres en tu tarea principal.

Espero que ahora estés más orientado. Desde el escritorio de Android puedes hacerte sendos accesos directos a ambas tareas, así es como yo lo tengo y de esta forma ya no necesito una escena. También puedes hacerte un perfil que ejecute la primera tarea en determinadas circunstancias (por ejemplo cuando pongas el smartphone boca abajo y además esté recargando la batería) y que ejecute la segunda tarea cuando se desactiva el perfil. Etc. Hay infinidad de posibilidades.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Gracias de parte de: