Articles of appwidget

Как обновить Android AppWidget после обновления / переустановки приложения?

Я создал приложение (https://play.google.com/store/apps/details?id=com.widget.analytics), в котором отображается статистика Google Analytics на главном экране Android с помощью AppWidget. К сожалению, после обновления приложения до новой версии пользователям необходимо удалить все виджеты, которые они создали ранее, и снова установить их. Это очень раздражает. Тем не менее, я убежден, что есть путь. После обновления приложения виджеты не будут […]

Динамическое изменение фона AppWidget с помощью 9 патчей

В setBackground() нет setBackground() , поэтому я использовал следующее обходное решение: Создал FrameLayout для моего виджета приложения с ImageView в качестве фонового представления. Изменено изображение ImageView с помощью setImageViewResource() . К сожалению, когда дело доходит до 9-patch drawables, этот метод не работает. Также, когда атрибут android:src ImageView указывает на 9-патч – он тоже не работает. […]

Вычислить высоту appwidget

Я не могу понять или найти решение по поиску по этой проблеме. У меня есть приложение для Android с appwidget, похоже на http://www.livescorewidget.eu/img/screendumps/widget.png , и я добавляю строки данных «на лету». Из-за разных устройств высота виджета различна, и поэтому для моих строк доступно различное пространство. Я хочу знать, сколько промахов или пикселей использует мой виджет, […]

Замена RemoteViewsFactory на обновление виджета приложения

Виджет моего приложения работает в нескольких режимах. Для каждого из этих режимов я создал RemoteViewsFactory . Чтобы переключаться между режимами, я отправляю намерение моему AppWidgetProvider . Получив его, я создаю RemoteViews и RemoteViews его в updateAppWidget() . Чтобы установить RemoteViewsFactory для представления коллекции, я RemoteViews setRemoteAdapter() : rv.setRemoteAdapter(appWidgetId, R.id.widget_view_flipper, intent); R.id.widget_view_flipper – это представление коллекции, […]

Обновление виджета приложений Android вручную с помощью кнопки в виджетах

У меня есть виджет Android App и кнопка на виджетах. Я установил период времени обновления 30 минут, но я также хочу обновить виджет, когда я касаюсь кнопки. Вот мой код: RemoteViews remoteV = new RemoteViews(context.getPackageName(), R.layout.widgetmenu); Intent intentSync = new Intent(context, MessMenuWidgetProvider.class); PendingIntent pendingSync = PendingIntent.getBroadcast(context,0, intentSync,0); remoteV.setOnClickPendingIntent(R.id.imageButtonSync,pendingSync); appWidgetManager.updateAppWidget(awID, remoteV); Я установил время обновления до […]

Какая разница в обновлении Android App Widget между двумя подходами?

Я прочитал какой-то пример в Интернете / книге о onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) приложений, обычный пример обновления виджета – в onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) метод AppWidgetProvider: final int N = appWidgetIds.length; for (int i=0; i<N; i++) { int appWidgetId = appWidgetIds[i]; RemoteViews updateViews = new RemoteViews(context.getPackageName(), R.layout.mywidget_layout); updateViews.setTextViewText(R.id.mytext, "updated text"); appWidgetManager.updateAppWidget(appWidgetId, updateViews); } […]

Android AppWidgetManager метод getAppWidgetIds возвращает пустой массив

Мое приложение обновляется внутри службы и сначала делает это, чтобы получить идентификатор виджета: AppWidgetManager widgetManager = AppWidgetManager.getInstance(this); int[] widgetIds = widgetManager.getAppWidgetIds(new ComponentName(this, WidgetReceiver.class)); Иногда этот метод возвращает пустой массив, хотя виджет все еще находится на главном экране. Я искал вокруг и ничего не мог найти об этом. Проблема в том, что это происходит не всегда, […]

Передача настраиваемого добавочного объекта дополнительно или в ArrayList для RemoteViewsService прерывает приложение

В основном, что я хочу сделать, заключается в том, чтобы передать настраиваемый объект с помощью намерения, в RemoteViewsService и, таким образом, на мой RemoteViewsFactory. По какой-то причине это просто не работает: S Каждый раз, когда я пытаюсь это сделать, виджет заканчивается тем, что отображает текст «Проблема с загрузкой». Когда я пытаюсь сделать то же самое, […]

Долгосрочная работа Android для обновления приложения

У меня есть виджет, который должен выполнять потенциально длительную операцию в onUpdate (). Просто выполнение операции напрямую привело к ANR. Чтобы решить эту проблему, моя первая попытка заключалась в создании в ней потока. Я заметил, что виджет не будет обновляться в некоторых случаях. Моя догадка заключается в том, что как только onUpdate () выйдет, андроид […]

Безопасно ли полагаться на вызов onDataSetChanged () после onCreated () в RemoteViewsFactory приложения AppWidget

Я разработал свой AppWidget соответствии с документом android doc, загрузив мой курсор в onCreate() и перезагрузив его в onDataSetChanged() , и все сработало нормально, пока я не установил некоторые точки останова в моем RemoteViewsService.RemoteViewsFactory и неожиданно обнаружил, что onDataSetChanged() всегда называется После вызова onCreate() , который onCreate() мой курсор дважды при первом создании. Я на […]