2 * Copyright (C) 2009 The Android Open Source Project
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package com.android.deskclock;
19 import android.app.PendingIntent;
20 import android.appwidget.AppWidgetManager;
21 import android.content.BroadcastReceiver;
22 import android.content.Context;
23 import android.content.Intent;
24 import android.widget.RemoteViews;
27 * Simple widget to show analog clock.
29 public class AnalogAppWidgetProvider extends BroadcastReceiver {
30 static final String TAG = "AnalogAppWidgetProvider";
32 public void onReceive(Context context, Intent intent) {
33 String action = intent.getAction();
35 if (AppWidgetManager.ACTION_APPWIDGET_UPDATE.equals(action)) {
36 RemoteViews views = new RemoteViews(context.getPackageName(),
37 R.layout.analog_appwidget);
39 views.setOnClickPendingIntent(R.id.analog_appwidget,
40 PendingIntent.getActivity(context, 0,
41 new Intent(context, AlarmClock.class),
42 PendingIntent.FLAG_CANCEL_CURRENT));
44 int[] appWidgetIds = intent.getIntArrayExtra(
45 AppWidgetManager.EXTRA_APPWIDGET_IDS);
47 AppWidgetManager gm = AppWidgetManager.getInstance(context);
48 gm.updateAppWidget(appWidgetIds, views);