Вопрос по android – Виджет приложения не отображается в панели приложений ICS

4

Кто-нибудь сталкивался с тем, что их виджет приложения не отображается в списке приложений ICS?

Первоначально я запустил это приложение для FroYo и ниже, которое прекрасно поддерживает виджет приложения. Вместе с Gingerbread и Honeycomb они тоже работают.

Виджет появится в списке в эмуляторе, если я открою & quot; Widget Preview & quot; приложение, однако, когда вы просто открываете ящик, он не отображается в списке вместе с другими. Это появляется на Соте. Я нигде (и другие тоже не вижу) нигде не вижу его на своей Galaxy Nexus.

Я пытался перезагрузить компьютер, поскольку видел, что это решает проблему для некоторых людей после первоначальной установки. Также у меня есть основное действие с фильтром намерений action.MAIN / category.LAUNCHER, так как у меня есть действия приложения, это не только виджет проекта.

Я опубликую некоторые фрагменты ниже, дайте мне знать, если потребуется больше. Мой minSdkVersion на 7 и targetSdkVersion на 15, свойства проекта также имеют цель, проверенную на 4.0.3. Атрибут installLocation имеет значение auto.

AndroidManifest.xml:

<receiver android:name=".AppWidget" android:label="@string/one_cell_widget_label">
    <intent-filter>
        <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
    </intent-filter>
    <intent-filter>
        <action android:name="com.frankcalise.h2droid.FORCE_WIDGET_UPDATE" />
    </intent-filter>
    <meta-data
        android:name="android.appwidget.provider"
        android:resource="@xml/one_cell_widget_settings" />
</receiver>

one_cell_widget_settings.xml:

<appwidget-provider
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:initialLayout="@layout/one_cell_widget"
    android:minWidth="@dimen/one_cell_widget"
    android:maxHeight="@dimen/one_cell_widget"
    android:updatePeriodMillis="0" >
</appwidget-provider>

one_cell_widget.xml:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget_background"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="@dimen/widget_margin"
    android:background="@drawable/widget_background">
    <TextView
        android:id="@+id/widget_title_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/app_name"
        android:textColor="@android:color/black" />
    <TextView
        android:id="@+id/widget_amount_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/default_widget_amount"
        android:textSize="12sp"
        android:textColor="@color/amount_color" />
    <TextView
        android:id="@+id/widget_percent_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/default_widget_percent" />
</LinearLayout>

и тогда, очевидно, я реализовал класс в AppWidget.java

public class AppWidget extends AppWidgetProvider

ОБНОВИТЬ:

Важное сообщение logcat, которое я нашел ранее сегодня, помогло мне решить эту проблему:

06-01 14:41:31.606: E/AppsCustomizePagedView(199): Widget ComponentInfo{com.frankcalise.h2droid/com.frankcalise.h2droid.AppWidget} has invalid dimensions (108, 0)

Ваш Ответ

1   ответ
5

дном из атрибутов, он должен сказать «minHeight», а не «maxHeight».

То, что привело меня к обнаружению этого, было нахождение сообщения об ошибке в logcat от средства запуска. В нем упоминалось, что мой виджет имеет недопустимые размеры (поэтому он не добавил его в список виджетов). Итак, я начал проверять все атрибуты измерения, связанные с моим виджетом.

Похожие вопросы