# Legal information
## Weather Information
**Weather Information** is licensed under the Apache License, Version 2.0. The full text
of the license can be found in:
- LICENSE
This license applies...
If you think the Android project AndroidWeatherInformation listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code
/**
* Copyright 2014 Gustavo Martin Morcuende
*/*fromwww.java2s.com*/
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/package name.gumartinm.weather.information.widget;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
publicclass WidgetProvider extends AppWidgetProvider {
@Override
publicvoid onUpdate(final Context context, final AppWidgetManager appWidgetManager, finalint[] appWidgetIds) {
// For each widget that needs an update, get the text that we should display:
// - Create a RemoteViews object for it
// - Set the text in the RemoteViews object
// - Tell the AppWidgetManager to show that views object for the widget.
finalint N = appWidgetIds.length;
for (int i=0; i<N; i++) {
int appWidgetId = appWidgetIds[i];
// To prevent any ANR timeouts, we perform the update in a service
final Intent intent = new Intent(context.getApplicationContext(), WidgetIntentService.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
intent.putExtra("refreshAppWidget", true);
context.startService(intent);
}
}
@Override
publicvoid onDeleted(final Context context, finalint[] appWidgetIds) {
// When the user deletes the widget, delete the preference associated with it.
finalint N = appWidgetIds.length;
for (int i=0; i<N; i++) {
WidgetConfigure.deletePreference(context, appWidgetIds[i]);
WidgetIntentService.deleteWidgetCurrentData(context, appWidgetIds[i]);
}
}
publicstaticvoid updateAppWidget(final Context context, finalint appWidgetId) {
final Intent intent = new Intent(context.getApplicationContext(), WidgetIntentService.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
intent.putExtra("refreshAppWidget", false);
context.startService(intent);
}
publicstaticvoid refreshAllAppWidgets(final Context context) {
final ComponentName widgets = new ComponentName(context.getApplicationContext(), WidgetProvider.class);
final AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context.getApplicationContext());
finalint[] appWidgetIds = appWidgetManager.getAppWidgetIds(widgets);
for (finalint appWidgetId : appWidgetIds) {
refreshAppWidget(context.getApplicationContext(), appWidgetId);
}
}
publicstaticvoid refreshAppWidget(final Context context, finalint appWidgetId) {
final Intent intent = new Intent(context.getApplicationContext(), WidgetIntentService.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
intent.putExtra("refreshAppWidget", true);
context.startService(intent);
}
}