android 定时刷新组件,android – 如何定期更新小部件,比如每5秒后更新一次
首先,我强烈建议您不要每5秒更新一次小部件.它会立刻杀死你的电池.您可以在appwidget-provider中使用android:updatePeriodMillis属性.在Android开发者网站上查看Adding the AppWidgetProviderInfo Metadata.问题是,为了节省电池,你不能设置30分钟(1800000毫秒)以下的时间.设置所需的更新周期后,您只需在App
首先,我强烈建议您不要每5秒更新一次小部件.它会立刻杀死你的电池.
您可以在appwidget-provider中使用android:updatePeriodMillis属性.
在Android开发者网站上查看Adding the AppWidgetProviderInfo Metadata.
问题是,为了节省电池,你不能设置30分钟(1800000毫秒)以下的时间.
设置所需的更新周期后,您只需在AppWidgetProvider的onReceive()方法中定义行为即可.要做到这一点,你必须抓住ACTION_APPWIDGET_UPDATE事件.
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (ACTION_APPWIDGET_UPDATE.equals(action)) {
// Update your widget here.
}
}
如果您真的想每5秒执行一次任务,可以使用Timer和TimerTask类:
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask task = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
// send a broadcast to the widget.
}
});
}
};
timer.scheduleAtFixedRate(task, 0, 5000); // Executes the task every 5 seconds.
更多推荐
所有评论(0)