PDA

Ver la Versión Completa : [ CONSULTA ] Consumo bateria de widget con dato cambiante cada segundo


emiegna
28/10/14, 22:54:04
Muy buenas, aquí disfrutando de mi nuevo movil; el Xperia Z2. Le sobra hasta memoria ram... Un tiro al lado de mi antiguo Galaxy S2. Ahora puedo hacer mil cosas al mismo tiempo, y a toda velocidad :-)

Bueno al lío. He creado un widget con Minimalistic Text para mi pantalla de inicio. Este me informa cada segundo de la memoria ram libre disponible. Con lo que el dato va cambiando casi continuamente.

La variable local en Minimalistic Text es %Memoria.

La cuestión, ¿Supondra este perfil un alto consumo de bateria? Eso si, solo trabaja con pantalla encendida.

Os pongo el perfil con tarea de entrada y salida que realiza y detiene la tarea que os pondré a continuación de este.

Perfil:

Perfil: Mem_Widget_Inc (71)
Estado: Estado Pantalla [ Está:Si ]
Entrada: MemWidgetIncOn (76)
A1: Realizar tarea [ Nombre:MemWidgetInc Prioridad:%priority Parámetro 1 (%par1): Parámetro 2 (%par2): Devolver Valor de Variable: Parar:Apagado ]
Salida: MemWidgetIncOff (86)
A1: Detener [ Con error:Apagado Tarea:MemWidgetInc ]

Tarea:

MemWidgetInc (70)
A1: Esperar [ MS:0 Segundos:1 Minutos:0 Horas:0 Días:0 ]
A2: Establecer variable [ Nombre:%Memoria A:%MEMF Calcular:Apagado Añadir:Apagado ]
A3: Buscar y Reemplazar Contenido de Variable [ Variable:%Memoria Buscar:MB Ignore Case:Apagado Multi-Line:Apagado One Match Only:Apagado Almacenar Coincidencias En: Reemplazar Coincidencias:Encendido Reemplazar Con:mb ]
A4: Establecer variable [ Nombre:%Mem A:%Memoria Calcular:Apagado Añadir:Apagado ]
A5: Minimalistic Text [ Configuración:%Memoria = %Mem Paquete:de.devmil.minimaltext Nombre:Minimalistic Text Cuenta atrás (segundos):0 ]
A6: Ir a acción [ Tipo:Número Acción Número:1 Etiqueta: ]

Caravantes
28/10/14, 23:56:21
Entrada: MemWidgetIncOn (76)
A1: Realizar tarea [ Nombre:MemWidgetInc Prioridad:%priority Parámetro 1 (%par1): Parámetro 2 (%par2): Devolver Valor de Variable: Parar:Apagado ]

No tengo ni idea de cuánta batería gastará eso, pero me ha sorprendido otra cosa: Tienes una tarea de entrada con una sola acción, y esa acción lo que hace es... ejecutar otra tarea distinta. ¿No sería más lógico poner esa otra tarea (MemWidgetInc) como tarea de entrada en el perfil?
Si quieres que la tarea de salida pueda interrumpir (detener) la tarea de entrada podrías hacerlo del siguiente modo: En las propiedades del perfil, desmarca la casilla Fuerza Orden Tareas, eso es todo: de esa forma ya será posible que la tarea de salida detenga la tarea de entrada que estuviera ejecutándose. Más información al respecto, en el siguiente post y en los posteriores: http://www.htcmania.com/showthread.php?p=14143935#post14143935

emiegna
29/10/14, 00:09:20
Uy, pues tienes toda la razón. Eso me pasa por hacer diez cosas a la vez. Al final no haces ninguna bien del todo. Que ridiculo soy...

Al margen de esta "cagada" (Que vergüenza), a ver si alguien me puede orientar sobre la cuestión principal, ya que estoy trabajando en otros perfiles algo mas complejos donde existen actualizaciones de datos continuamente.

Gracias Caravantes ;-)