Saya tahu itu mungkin, tetapi saya tidak tahu cara untuk memicu pembaruan widget saya dari aktivitas utama. Apakah tidak ada maksud umum yang bisa saya siarkan?
android
android-activity
android-widget
Nuvious
sumber
sumber
widgetId
?intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
Ini membantu ketika saya mencari tentang cara memperbarui widget dari layanan / atau tindakan (tetapi mungkin dari setiap Konteks):
sumber
Jadi untuk memperbarui widget dari suatu aktivitas, Anda dapat melakukannya seperti ini:
Bekerja untuk saya :)
sumber
Coba ini:
sumber
Jika Anda bekerja dengan widget yang menggunakan koleksi seperti ListView, GridView, atau StackView, untuk memperbarui item widget, lakukan hal berikut:
Dengan metode notifyAppWidgetViewDataChanged () ini, Anda bisa memaksa item widget untuk mengambil data baru apa pun secara real time.
sumber
sumber
notifyAppWidgetViewDataChanged()
yang membutuhkan array.Solusi yang diterima Phaethon di Kotlin:
Di mana MyAppWidgetProvider berasal dari AppWidgetProvider:
class MyAppWidgetProvider : AppWidgetProvider() {
sumber
Jika Anda mencoba memperbarui widget secara terprogram di mana Anda tidak memiliki akses ke YourWidgetProvider.class secara eksplisit, misalnya dari modul atau pustaka lain, Anda dapat menangkap apa yang dihasilkan YourWidgetProvider.class.getName () dan membuat konstanta:
Anda kemudian akan dapat menggunakan ini secara implisit:
sumber