Лабораторная работа №8. Создание виджета Задание: создать собственный виджет с настройками. Например,
виджет, который открывает какой-то сайт, адрес которого можно поменять в
настройках.
Создайте новый проект без Activity, то есть при создании необходимо
выбрать пункт Add No Activity вместо обычного Empty Activity. Теперь
необходимо создать activity для виджета. Для этого нажмите правой кнопкой
мыши по папке app, затем New -> Widget -> App Widget. Здесь задайте
необходимые параметры для виджета. Можно оставить все пункты по
умолчанию, однако нужно поставить галочку в пункте Configuration Screen,
чтобы в проект добавилось activity для настройки виджета.
Перейдите в файл res/xml/new_app_widget_info.xml и в параметре
android:updatePeriodMillis смените значение «86400000» на «0», так как
обновлять данный виджет не нужно. Затем перейдите в файл
manifests/AndroidManifest.xml
и
перед
тэгом
application
добавьте
приложению разрешение пользоваться интернетом:
<
uses-permission android :name= "android.permission.INTERNET" />
Теперь
перейдите
в
файл
NewAppWidget.java,
в
методе
updateAppWidget удалите весь код и напишите следующий:
Intent intent=
new Intent(Intent.
ACTION_VIEW ,
Uri.parse(
"https://google.com" ));
PendingIntent pending= PendingIntent.getActivity(context,
0
,
intent,
0
);
RemoteViews views =
new RemoteViews(context.getPackageName(),
R.layout.
new_app_widget );
views.setOnClickPendingIntent(R.id.
appwidget_text , pending);
appWidgetManager.updateAppWidget(appWidgetId, views);
57
Здесь устанавливается, что при нажатии на виджет необходимо
открыть браузер и перейти по ссылке google.com.
Теперь необходимо найти и удалить в этом классе метод onDeleted.
Затем перейдите в файл NewAppWidgetConfigureActivity.java, удалите
весь код в этом классе и добавьте следующие строчки: