先是看到一本安卓教材上说用一个属性,但是尝试无效,听说是1.6之后就废除了、、、然后尝试用service,但是还是更新不了啊,大婶们给看下吧
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO Auto-generated method stub
Time t=new Time("GMT+8");
t.setToNow();
String today=t.year+"_"+t.month+"_"+t.monthDay+"/"+t.hour+":"+t.minute+":"+t.second;
Log.d("Timer", today);
RemoteViews rv=new RemoteViews(getPackageName(), R.layout.widget);
rv.setTextViewText(R.id.tvClock, today);
AppWidgetManager appWidgetManager=AppWidgetManager.getInstance(this);
ComponentName comp=new ComponentName(this, DataAppWidget.class);
appWidgetManager.updateAppWidget(comp, rv);
Timer timer=new Timer(true);
timer.schedule(new MyTimer(intent,startId),5000);
return START_STICKY;
}
class MyTimer extends TimerTask{
private Intent intent;
private int startId;
public MyTimer(Intent intent,int startId){
this.intent=intent;
this.startId=startId;
}
@Override
public void run() {
// TODO Auto-generated method stub
intent=new Intent(UpdateService.this,UpdateService.class);
startService(intent);
}
}
还有一个小问题,就是我设置了8时区,但是在log里打印的时间还是差8个小时、、、
------解决方案--------------------
gmt是多少