Виджет не загружен на AVD - PullRequest
0 голосов
/ 09 марта 2012

Я пытаюсь создать виджет для Android. Содержит такие файлы:

Рез / XML / widgetinfo.xml:

<?xml version="1.0" encoding="UTF-8"?>
<appwidget-provider
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:minWidth="146dip"
  android:minHeight="146dip"
  android:updatePeriodMillis="3600000"
  android:initialLayout="@layout/main" />

Рез / макет / main.xml:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <LinearLayout >
        <TextView android:text="My widget" />
    </LinearLayout>
</FrameLayout>

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.justmad.thegame"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="10" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name">
        <receiver android:name="WidgetProvider">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>
            <meta-data android:name="android.appwidget.provider"
                android:resource="@xml/widgetinfo" />
        </receiver>
    </application>
</manifest>

ЦСИ / com.test.WidgetProvider:

package com.test;

import android.appwidget.AppWidgetProvider;

public class WidgetProvider extends AppWidgetProvider {
}

Но когда я запускаю его в AVD и пытаюсь добавить свой виджет, он отображает сообщение «Проблема загрузки виджета». LogCat ничего не показывает в подробном режиме. Итак, что не так?

1 Ответ

1 голос
/ 09 марта 2012
  1. Вам нужно реализовать onUpdate() в вашем AppWidgetProvider.

  2. Ваш макет не работает. Вы можете сказать это, попробовав свой макет, скажем, в упражнении. Вам не хватает android:layout_width и android:layout_height на LinearLayout и TextView. Также неясно, что ваш FrameLayout делает для вас.

...