2010-12-02 126 views
2

我已經實現了一個小部件,但有問題刷新它。 我得到最初的onUpdate,並再次如果我離開它的年齡。Android小部件刷新

但是,我希望我的主應用程序中的更改自動反映在小部件上。 我如何獲得更新? 有沒有從我的活動調用小部件的方法(我只是做一個靜態例程)還是有辦法強制我的「onUpdate」被稱爲每次手機返回到主屏幕?

+0

不要假設你的widget將在主屏幕上。 – 2010-12-02 17:27:27

回答

3

您是否使用服務實現了您的小部件以更新RemoteViews?如果是這樣,你可以用Intent啓動該服務,並且該小部件將更新。

Intent widgetUpdateIntent = new Intent(context, MyClassName.UpdateService.class); 
context.startService(widgetUpdateIntent); 
+1

我不知道如何在小部件中設置服務來爲遠程視圖提供服務。有沒有可以指點我的例子? – Chris 2010-12-02 18:35:25

1
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
alarmManager//.setRepeating(AlarmManager.RTC_WAKEUP, 500, 2, pendingIntent1); 
.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, 500, pendingIntent1);