2011-07-18 45 views
1

我的小工具應每天在0:00刷新其文字瀏覽。在widget_provider.xml中,我設置了android:updatePeriodMillis="1000",但是我讀到最小更新週期是30分鐘,因此我必須使用alarmManager。所以我想要一個觸發每天0點刷新的鬧鐘。 UpdateService.class處理清爽Android:如何在AppWidgetProvider中創建鬧鐘

public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)方法,我用這個代碼(設置基於日期textviews文本類是不直到午夜,半小時後調用。):

Intent intentN = new Intent(context, UpdateService.class); 
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0); 
AlarmManager alarmManager = (AlarmManager)getSystemService(context.ALARM_SERVICE); 
Calendar cal = Calendar.getInstance(); 
cal.setTimeInMillis(System.currentTimeMillis()); 
cal.add(Calendar.HOUR_OF_DAY, 0); 
cal.add(Calendar.MINUTE, 0); 
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 24*60*60*1000, pendingIntent); 

Eclipse的第三行說:

The method getSystemService(String) is undefined for the type HelloWidget 

HelloWidget是AppWidgetProvider的名稱。

感謝

回答

2

你嘗試

AlarmManager alarmManager = (AlarmManager)context.getSystemService(context.ALARM_SERVICE);