読者です 読者をやめる 読者になる 読者になる

2hours

1日2時間でなにができるかな

テストの状況

Android とけい

実機で再び停止しましたorz
そこで更に詳しく調べていると、現象を再現出来ることに気付きました。


端末に負荷が掛かるとプロセスが死ぬっぽい

という結論。
とにかく端末に負荷をかけまくると

05-13 01:23:05.677: INFO/ActivityManager(78): Low Memory: No more background processes.
05-13 01:23:30.557: INFO/ActivityManager(78): Process net.selfip.goodspeed.clock_widget (pid 325) has died.

というログを吐いていることに気付いた。
自分のアプリも含め、立ち上がっているアプリ全てが落ちまくった。


他のアプリはなぜそのまま停止されないのか

自分のアプリ以外で、同じようにプロセスが死んだにも関わらず動き続けるものが。
(そのまま死にっぱなしのもありましたが・・・)


何か回避方法はないかと探し回ってみると
http://www.swingingblue.net/mt/archives/002768.html


うーん・・・。


結論

どうも止まること自体は回避するのは難しそうです。
なので、「止まったとしてもその後また動くようにする」ことで回避することに。


その結果、高負荷を掛けてプロセスが死んだとしても、動き続けるようになりました。




また大幅に処理を書き換えました・・・。


前回の記事で

これまで複数個ウィジェットを配置した場合、最後に追加したウィジェットの設定が全てに適用されるようになっていましたが、
この先何かと問題が起こりそうなので、別々に管理するように変更しました。

と書きましたが、それもまた元に戻っている状態です。
まぁ時計を複数個配置することはないから使用上は問題ないとは思いますが・・・。



再びテストして、週末にアップデート出来たらいいなーと思ってます(あくまでも希望)。