У меня сложнее всего выяснить, как программно удалить AppWidget на главном экране (т.е. без перетаскивания одного пользователя в корзину). В качестве примера рассмотрим приложение, которое может иметь несколько учетных записей, с любым количеством виджетов для каждой учетной записи - после удаления учетной записи виджет также должен быть удален.
Я пробовал следовать неясному примеру из http://www.netmite.com/android/mydroid/cupcake/frameworks/base/services/java/com/android/server/AppWidgetService.java, но, похоже, он даже не запускает OnDeleted, а тем более удаляет AppWidget с главного экрана.
Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_DELETED);
intent.setComponent(info.componentName); // references AppWidgetProvider class
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId);
sendBroadcast(intent);
Есть ли у кого-нибудь советы о том, как это можно сделать? Примером могут быть пчелиные колени. Спасибо.