Когда именно вызывается AppWidgetProvider.onRestored ()? - PullRequest
0 голосов
/ 19 апреля 2020

В каких случаях я должен переопределить onRestored?

Они просто ссылаются на резервную копию, которую можно включить / отключить в манифесте? Возможно ли, что этот метод get вызывается, когда приложение get тоже обновляется? Или при любых других обстоятельствах, где appWidgetIds может измениться? Я думаю, что идентификаторы должны оставаться неизменными навсегда, но не все производители / программы запуска обрабатывают виджеты одинаково ...

Может ли это быть полезно для фантомных / призрачных виджетов?

/**
 * Called in response to the {@link AppWidgetManager#ACTION_APPWIDGET_RESTORED} broadcast
 * when instances of this AppWidget provider have been restored from backup.  If your
 * provider maintains any persistent data about its widget instances, override this method
 * to remap the old AppWidgetIds to the new values and update any other app state that may
 * be relevant.
 *
 * <p>This callback will be followed immediately by a call to {@link #onUpdate} so your
 * provider can immediately generate new RemoteViews suitable for its newly-restored set
 * of instances.
 *
 * {@more}
 *
 * @param context
 * @param oldWidgetIds
 * @param newWidgetIds
 */
public void onRestored(Context context, int[] oldWidgetIds, int[] newWidgetIds) {
}
...