Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
...
android:updatePeriodMillis="0"
...>
</appwidget-provider>
@Override
public void onReceive(Context context, Intent intent) {
// v1.5 fix that doesn't call onDelete Action
final String action = intent.getAction();
Log.w("onReceive() action", action);
if (AppWidgetManager.ACTION_APPWIDGET_DELETED.equals(action)) {
final int appWidgetId = intent.getExtras().getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
if (appWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID) {
this.onDeleted(context, new int[]{appWidgetId});
}
} else {
try {
super.onReceive(context, intent);
} catch (IndexOutOfBoundsException ex) {
Log.e("onReceive", ex.getMessage());
ex.printStackTrace();
}
}
@Override
public void onUpdate(Context ctxt, AppWidgetManager mgr, int[] appWidgetIds)
{
...
new Thread(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
for (int i = 0; i < ids.length; i++)
{
appWidgetManager.updateAppWidget(ids[i], buildUpdate(context, ids[i]));
}
}
}).start();
super.onUpdate(ctxt, mgr, appWidgetIds);
....
@Override
public void onUpdate(Context ctxt, AppWidgetManager mgr, int[] appWidgetIds)
{
final Context context = ctxt;
final AppWidgetManager appWidgetManager = mgr;
final int[] ids = appWidgetIds;
....
for (int i = 0; i < ids.length; i++)
{
appWidgetManager.updateAppWidget(ids[i], buildUpdate(context, ids[i]));
}
....
Пишем виджет ХабраКарма ex-CarmaWidget для Android