0
可能是一個新手問題。我已經嘗試玩Android的AppWidgetProvider onUpdate方法,並使用「睡眠」來引起一個小的延遲。Android AppWidget - 奇怪的睡眠模式
使用循環重複更新 - 這是事情:循環計數器設置爲20,休眠時間爲1秒 - 循環僅執行10次 - 每秒延遲900毫秒將循環增加到12,延遲500毫秒獲得20的完整循環計數。這是如何解釋的?
查看下面的AppWidgetProvide代碼。該小部件只包含一個文本視圖。
public class SimpleWidget extends AppWidgetProvider {
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
// TODO Auto-generated method stub
super.onUpdate(context, appWidgetManager, appWidgetIds);
Log.w("on update here", " message");
RemoteViews rm = new RemoteViews(context.getPackageName(),
R.layout.widget_layout);
for (int loop = 0; loop <= 20; loop++) {
Log.w("on update here", "loop counter =" + loop);
rm.setTextViewText(R.id.tvWidget, "now you see it " + loop);
for (int index = 0; index < appWidgetIds.length; index++) {
appWidgetManager.updateAppWidget(appWidgetIds[index], rm);
Log.w("updating", "aw number =" + index);
}
try {
Thread.sleep(2000, 0);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}