表題の件についての質問になります。
複数widgetのインスタンスを生成した際に、表題のメソッドで
widgetのid群を取得することができますが、
configureアクティビティを設定した場合、設定画面で「back」ボタンをおしてwidgetの生成をキャンセルした場合に、
キャンセル時に採番されたidも返ってきてしまうようです。
このゴミを削除する(もしくはゴミができない)方法を探してみたのですが、そのようなI/Fはないようで、
現状は以下のようなトリッキーな方法で回避しています。
ConfigureなActivityでonKeyDownをオーバーライドして、キャンセル時に採番したIDをsharedPreferenceに保存しておき
widget群へのupdateを行う際に、キャンセルされたidは無視するような実装にすることで、不要な処理が走らないようにしています。
以下にソースがあります。
この問題への根本対応をご存知の方がいらっしゃいましたら、ご教授頂ければと思います。
※あとconfigureを設定するとonUpdateはコールバックされないとドキュメントにはありますが、実際には呼ばれているのも気になっています。
これを無視する必要がある?
以上、よろしくお願いします。