![]() |
|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
Pausar/controlar servicio en un Widget con pantalla apagada y actualización forzada
Hola a todos,
Escribo este hilo ya que soy novato en programación en Android, estoy empezando, aunque tengo amplia experiencia en programación en varios lenguajes... El caso es que he creado mi primer widget, para empezar he optado por un reloj digital. Si quereis verlo/probarlo el enlace es: https://play.google.com/store/apps/d...android.widget Es gratuito. Es bastante simple, hora minutos y fecha y se le puede asignar una acción a cada una de ellas de forma independiente. También se puede cambiar la tipografía, y espero en próximas versiones que también se pueda elegir un skin. Dudas me van surgiendo bastantes, pero googleando las voy solucionando. Pero ahora me ha surgido un par de ellas que no he obtenido respuesta. Resumo a groso modo la estrutura que tiene la app para luego preguntar. La app consta de un Activity principal que es el que permite configurar el widget: Código:
public class AccionesActivity extends Activity { ... } Código:
public class Digital_Clock_Simplicity extends AppWidgetProvider { ... public static final class UpdateService extends Service { ... } ... } Con el betterbattery stats he visto además que el wiget ha provocado bastantes wakelock mientras la pantalla estaba apagada, lo cual en este caso no tiene sentido... 2) Actualización del aspecto del widget. ¿Como puedo forzar la actualización del widget al cambiar la configuración? El Activity lo que hace es permitir configurar el widget, elegir la tipografía, las acciones al pulsar en hora y minutos y fecha,..., el tema es que, una vez que he cambiado algo del aspecto, para forzarlo a actualizar el widget, lo que he hecho es, en la clase AppWigetProvider he creado una función que actualiza el aspecto: Código:
public class Digital_Clock_Simplicity extends AppWidgetProvider { ... public static void ActualizaReloj(Context context) { // TODO Auto-generated method stub relojcambiado=true; context.startService(new Intent(UpdateService.ACTION_UPDATE)); } ... } Código:
public class AccionesActivity extends Activity { ... @override protected void onStart() { super.onStart(); com.digitalclocksimplicity.android.widget.Digital_Clock_Simplicity.ActualizaReloj(this); } ... } Gracias de antemano y saludos a todos. Última edición por mpiero Día 04/02/15 a las 10:54:02 |
|
#2
|
Nadie??
|
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 05:14:51 (GMT +2)
HTCMania: líderes desde el 2007