1) Добавим ImageButton и это будет виджет по нажатию на нему будет открыться сайт в браузере.
2) При создании виджетов можно использовать только FrameLayout, LinearLayout и RelativeLayout, также среди разрешенных компонентов есть только AnalogClock, Button, ImageButton, Chronometer, ImageView, ProgressBar, TextView и ViewFlipper.
3) Создаем XML файл widget.xml с типом ресурса AppWidget Provider, далее нужно ввести:
4) В AndroidManifest.xml удаляем activity и вместо него добавляем receiver.
5) Добавляем User Permission типа android.permission.INTERNET
6) Изменяем код в Main.java
2) При создании виджетов можно использовать только FrameLayout, LinearLayout и RelativeLayout, также среди разрешенных компонентов есть только AnalogClock, Button, ImageButton, Chronometer, ImageView, ProgressBar, TextView и ViewFlipper.
3) Создаем XML файл widget.xml с типом ресурса AppWidget Provider, далее нужно ввести:
- Min width - количество ячеек которое мы хотим задать * 74 - 2
- Update period millis - период обновления
- Initial layout - наш layout
4) В AndroidManifest.xml удаляем activity и вместо него добавляем receiver.
<receiver android:name="Main"> <intent-filter > <action android:name="android.appwidget.action.APPWIDGET_UPDATE"/> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget" /> </receiver>
5) Добавляем User Permission типа android.permission.INTERNET
6) Изменяем код в Main.java
package com.example.mywidget; import android.net.Uri; import android.os.Bundle; import android.app.Activity; import android.app.PendingIntent; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; import android.view.Menu; import android.widget.RemoteViews; public class Main extends AppWidgetProvider { @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { // TODO Auto-generated method stub super.onUpdate(context, appWidgetManager, appWidgetIds); for (int i = 0; i < appWidgetIds.length; i++) { int appWidgetId = appWidgetIds[i]; Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://google.com")); // далее задаем PendingIntent, который будет срабатывать по нажатию на кнопку PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.main); views.setOnClickPendingIntent(R.id.imageButton1, pending); appWidgetManager.updateAppWidget(appWidgetId, views); } } }