不确定这是否会被另一个帖子回答,但是一段时间寻找答案,我没有找到答案。
我实现了一个应用小部件,每隔30分钟显示一些文本,但在我点击小部件之前它没有更新。 这是我的onUpdate方法:
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)
{
// Get all ids
ComponentName thisWidget = new ComponentName(context, MyWidgetProvider.class);
int[] allWidgetIds = appWidgetManager.getAppWidgetIds(thisWidget);
Calendar getToday = Calendar.getInstance();
for (int widgetId : allWidgetIds)
{
int number = (new Random().nextInt(100));
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
// Set the text
String n = ""+number;
remoteViews.setTextViewText(R.id.update, n);
remoteViews.setTextColor(R.id.update, Color.BLUE);
// Register an onClickListener
Intent intent = new Intent(context, MyWidgetProvider.class);
intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
remoteViews.setOnClickPendingIntent(R.id.update, pendingIntent);
appWidgetManager.updateAppWidget(widgetId, remoteViews);
}
我的代码有什么问题?任何人都可以帮助我。提前谢谢
已添加:
<appwidget-provider
xmlns:android="http://schemas.android.com/apk/res/android"
android:updatePeriodMillis="110000"
android:initialLayout="@layout/widget_layout"
android:minHeight="72dp"
android:minWidth="300dp">
</appwidget-provider>