メニエスの名のもとに

プログラミング関係を中心としたぐだぐだブログ

Application Not Responding 対策

ANR が発生していました。

ANR 対策のためアプリを全面的に書き換えています。その間、ナンプレアプリの公開を停止しています。デバッグ後、再度公開する予定です。

基準がないのが問題ではないか。

重い処理をするときは別タスクと言っても、どこから重いかは誰にも分からないのです。仕方がないので、画面表示処理以外は可能な限り別タスクにすることにしました。ということはつまり、全面書き換えに近いわけです。それにも拘わらず、ここは重くないよねとかつい思ってしまうが、それが罠という気もする。

インテントによる画面遷移もしていない

まあ、重いと言えばインテントによる画面遷移が重いのですが、これは開発初期に止めていました。重いからというより、遷移先の画面でhomeボタンが押されたら、次に再開するときはその遷移先の画面であるという仕様と、ボタンが足りないので前画面に戻るのはBackボタンにするという決定から、インテントではほとんど無理だったので。

デバッグも不足していた

デバッグでANRを発見できなかったのは、デバッグ不足もあるので、今後はもっとデバッグに時間を掛ける必要がある。というわけで、再公開はすぐにはできません。