Главная » Разработка для Android » Создание Приемника намерений для вашего виджета и добавление его в манифест приложения

0

Виджет представляет собой реализацию Приемника широковещательных намерений и включает в себя Фильтры намерений, которые отслеживают  объ- екты Intent. А они в свою очередь инициируют обновление  виджета с по- мощью действий AppWidget.ACTION_APPWIDGET_UPDATE, DELETED, ENABLED  и DISABLED. Вы можете создать свой виджет, напрямую  на- следовав класс IntentReceiver и переопределив метод onReceive для обра- ботки поступающих Намерений.

Класс AppWidgetProvider упрощает данную задачу, скрывая от раз- работчика  все операции  с Намерениями и предоставляя обработчики  для обновления, удаления, включения и отключения.

В листинге 10.3 показана реализация простого виджета, который насле- дует класс AppWidgetProvider и переопределяет метод onUpdate.

Листинг 10.3. Реализация виджета

import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context;

public class MyAppWidget extends AppWidgetProvider {

@Override

public void onUpdate(Context context,

AppWidgetManager appWidgetManager, int[] appWidgetIds) {

// TODO Обновить пользовательский интерфейс виджета.

}

}

В манифест  приложения виджеты  добавляются так же, как и другие Приемники намерений. Однако чтобы указать Приемник намерений в качестве виджета,  вам необходимо  вставить  внутрь него два дополнительных тега (листинг  10.4):

Фильтр намерений для действия android.appwidget.action.APPWIDGET_ UPDATE;

ссылку на ресурс с метаданными  в формате XML, в котором описан ваш виджет.

Листинг 10.4. Описание  виджета в манифесте  приложения

<receiver android:name=".MyAppWidget" android:label="My App Widget">

<intent-filter>

<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />

</intent-filter>

<meta-data android:name="android.appwidget.provider" android:resource="@xml/my_app_widget_info"

/>

</receiver>

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии