Mam widżet, jego konfigurację, więc po kliknięciu na niego otwiera niektóre ustawienia w działaniu.Aktualizacja widgetu Android z działania
views.setOnClickPendingIntent(R.id.btnActivate, pendingIntent);
Spowoduje to skonfigurowanie niektórych ustawień aplikacji. Chcę, aby widżet zaktualizował swój widok, aby odzwierciedlał zmienione ustawienia po uruchomieniu Aktywności, które uruchamiam. Używanie interwału aktualizacji lub innego rodzaju pobierania nie jest odpowiednie.
Widziałem kilka miejsc tutaj oraz w android docs to kod używany:
appWidgetManager.updateAppWidget(mAppWidgetId, views);
Ale ja nie wiem, jak uzyskać wartość mAppWidgetId. Próbowałem następujący przykład dla działalności konfiguracji widget tutaj http://developer.android.com/guide/topics/appwidgets/index.html, ale w poniższym kodzie
Intent intent = getIntent();
Bundle extras = intent.getExtras();
if (extras != null) {
mAppWidgetId = extras.getInt(
AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID);
}
dodatki zawsze jest null, więc nigdy nie uzyskać AppWidgetID.
Ok, teraz tylko się włóczę. Jak myślisz, co mogę zrobić?
Dzięki za podzielenie się odpowiedzią !!! Gdzie musimy umieścić ten kod, wewnątrz ustawienia widgetu lub wewnątrz klasy widżetów ??? – BamsBamx
Nieważne, wstawiłem to do metody updateWidget, zmieniłem niektóre "to" według "kontekstu" i usunąłem "AppWidgetManager appWidgetManager = AppWidgetManager.getInstance (this)" Teraz działa ... dzięki! – BamsBamx
Jeśli masz wiele konfiguracji dla widgetów, możesz wypróbować appWidgetManager.getAppWidgetIds (komponent), a następnie iterować nad nimi. – rwilson04