テクノモンキーのアプリ開発日記

テクノモンキーの開発ブログです。iOS、Android、Unity、Cocos2d-xなどアプリ開発関連のTipsやアプリ開発に役立つ情報を発信します。

【Android】「The application may be doing too much work on its main thread.」の対処法

Androidアプリを開発していて、どうもアプリの挙動がおかしいので、

Logcatをみてみたら、以下のようなログが出力されていました。

 

The application may be doing too much work on its main thread. 

 

調べてみると、このようなログが出力される場合、メインスレッドでの処理が多すぎて、途中の処理が中断されたり処理をスキップしてしまうようです。

 

stackoverflow.com

 

home-te.net

 

Android】「The application may be doing too much work on its main thread.」の対処法

上記のようなログが出力される場合、アプリが意図しない挙動になる可能性が高いので、対処が必要です。

 

メインスレッドでの処理が多すぎるため処理落ちが発生しているので、画面表示や、UI関係の処理以外の処理を非同期処理に変更することで解決できます。

 

iOSだとこの辺り雑でも問題なかったりするのですが、Androidの場合はかなりパフォーマンスに影響出る場合があるので、出来るだけUI関係以外の処理は非同期で処理するくせをつけたいと思います。

 

qiita.com

akira-watson.com