package io.futurestud.tutorials.glide.ui; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.ComponentName; import android.content.Context; import android.graphics.Bitmap; import android.widget.RemoteViews; import com.bumptech.glide.Glide; import com.bumptech.glide.request.animation.GlideAnimation; import com.bumptech.glide.request.target.AppWidgetTarget; import io.futurestud.tutorials.glide.R; import io.futurestud.tutorials.glide.ui.activities.GlideExampleActivity; /** * Created by norman on 10/10/15. */ public class FSAppWidgetProvider extends AppWidgetProvider { private AppWidgetTarget appWidgetTarget; @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.custom_view_futurestudio); appWidgetTarget = new AppWidgetTarget( context, remoteViews, R.id.custom_view_image, appWidgetIds ) { @Override public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) { super.onResourceReady( resource, glideAnimation ); } }; Glide .with( context.getApplicationContext() ) .load( GlideExampleActivity.eatFoodyImages[3] ) .asBitmap() .into( appWidgetTarget ); pushWidgetUpdate(context, remoteViews); } public static void pushWidgetUpdate(Context context, RemoteViews remoteViews) { ComponentName myWidget = new ComponentName(context, FSAppWidgetProvider.class); AppWidgetManager manager = AppWidgetManager.getInstance(context); manager.updateAppWidget(myWidget, remoteViews); } }