2012年3月24日土曜日

ICSでウィジェットが表示されない現象

Galaxy Nexusやエミュレータ(ICS)に自作Androidアプリを
インストールしてもウィジェット一覧に表示されない現象に遭遇した。

エミュレータにプリインストールされているWidget Previewでは
一覧に表示されており、動作確認でも問題はなかった。
マニフェストファイルも確認したが問題なさそうだったので、
同様の現象が報告されていないか検索してみると
以下のように幾つかヒットした。

■ Google Nexus S ICS 4.0.3 Widget does not appear after installation
http://code.google.com/p/android/issues/detail?id=24208

■ Newly installed widgets are not runnable on Honeycomb
https://groups.google.com/forum/?fromgroups#!topic/android-developers/bvlk3EOV6Xk

■ Installed Widget won't appear unless user rotates screen
http://code.google.com/p/android/issues/detail?id=20881

■ Android: Widgets not showing in app drawer ICS
http://stackoverflow.com/questions/9232692/android-widgets-not-showing-in-app-drawer-ics

■ Widget not listed in ICS
http://stackoverflow.com/questions/8785922/widget-not-listed-in-ics

■ Widget does not appear in widgets as it should be
http://stackoverflow.com/questions/9104469/widget-does-not-appear-in-widgets-as-it-should-be

■ App Widget does not appear in the widget list on Honeycomb devices until Launcher is restarted
http://stackoverflow.com/questions/7736313/app-widget-does-not-appear-in-the-widget-list-on-honeycomb-devices-until-launche


ざっと流し読みしてみたが、端末を再起動、Activityを1回起動などの対処方法で
解決したケースがあるようだが、私の環境ではウィジェットが表示される事はなかった。

とりあえず保留として引き続き調査を行う予定。


【2012/3/26追記】
XMLファイルでappwidget-providerの構文が誤っていた事が原因だった。
下記のように括弧で閉じる位置を修正した所、ウィジェット一覧に
アプリのウィジェットが表示された。

【修正前】


    android:minWidth="72dip"
    android:minHeight="72dip"
    android:initialLayout="@layout/widget"
    android:updatePeriodMillis="0"

【修正後】




今まで動作していた事が不思議なのだが、皆さんはこのようなヘマを
しないようにご注意を…。

0 件のコメント:

コメントを投稿