うーん、onResume とか、想定外のパスに入り込んでいるなぁ。
というか、ウィジェットから Intent を送付したとき、EBt で一旦 Intent を受け取り、更に別の Intent を送付したりしているんだけど、このときに onCreate で画面とか設定しておかないと戻るボタンで戻ってきたときに画面が空の状態に戻ろうとしてしまって、結果として謎の画面が表示されるという不具合が…
え?文章の意味がわからん?そうだね…
まじめに書くと、こんな感じで不具合動作をしていたっぽい。
1) Widget が押されたら、EBt に Intent を送付
2) EBt は、onCreate で Intent を解析。更に詳細の Intent を送付(startActivityForResult)
3) 編集
4) 編集終了後、finish。
5) EBt の onActivityResult で、メモ表示用の Intent を再送付(startActivityForResult)
6) 表示( onCreate と onResume で)
7) 戻るボタンを押す
8) EBt の onActivityResult で戻ってきたときの処理
9) 2) の Intent に対して、onResume が呼び出されるけど、2) で画面設定していないので空画面になる
つまりなんだ。2) で画面設定しないことの影響が 9) で顕在化したと。で、今までこのパスを通らなかったの?という話だけど、今までは外部から Intent を受け付けていなかったから大丈夫だったという感じだろうか。
あー、そういえば他のアプリから Intent 受け取るケースがあった。大丈夫だろうか。試してみないと。
というわけで、今日もデバッグで夜が更けていくのでした…
最近のコメント