2012-04-19 64 views
0

我有一個開始到onUpdate方法的小部件,它從web讀取相同的數據並將其保存到首選項中,然後此服務必須調用小部件的onUpdate方法以使用此數據進行更新。我使用這個服務代碼Android:小工具和服務

Intent i = new Intent(); 
i.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE); 
PendingIntent pi = PendingIntent.getBroadcast(getApplicationContext(), 0, i, PendingIntent.FLAG_UPDATE_CURRENT); 
AlarmManager alarm = (AlarmManager)getApplicationContext().getSystemService(Context.ALARM_SERVICE); 
alarm.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(), 5000, pi); 

但是,這段代碼不會調用小部件的onUpdate方法......爲什麼?

回答

0

這裏是更新小窗口

ComponentName thisWidget = new ComponentName(context, YourAppWidgetprovider.class); 
     AppWidgetManager manager = AppWidgetManager.getInstance(context);   manager.updateAppWidget(thisWidget, updateViews); 

更新視圖是RemoteViews對象的代碼。在調用更新之前,使用您的數據更新此遠程視圖。