Flutter: XcodeでThis method should not be called on the main thread as it may lead to UI unresponsiveness.の警告

※当サイトは、アフィリエイト広告を利用しています

結論:Xcode側の不具合だが、問題ないので気にせずでOK

2022/12/29 Flutter エラー・バグ日記

 

iOS実機でXcodeからビルドしたところ、アプリの動作は問題ないのものの、Xcode上に紫の文字で警告が表示された。

 

This method should not be called on the main thread as it may lead to UI unresponsiveness.

 

 

本記事はライトな日記思考で書いているので、詳細説明はしておらず、基本、テキストのみで画像とかはあまり載せておりません。。m(_ _)m

解説記事ではないため、解決していない内容や、その時々の間違った解釈を述べてしまっている可能性が大いにありますので、何卒、ご了承ください。

  

「FlutterAppDelegate」クラスのところに警告が出ており、直訳すると、

 

「UI が応答しなくなる可能性があるため、このメソッドをメインスレッドで呼び出すべきではない」

 

とのこと。。

 

Xcode14とiOS16の組み合わせで起こるらしい

初めて見る警告で、何のことかさっぱり分からず、ネット上を調べると、下記Q&A記事が見つかった。

 

 

質問者の方は、iOS16の端末をXcode14でビルドして発生したらしく、自分と全く同じ状況(自分のXcodeのバージョンは14.0)。

 

質問者による解決マークは付いていないものの、つい数日前に、Appleの「Developer Forums」に有益な説明がある、との回答がなされていた。

 

バックトレースを確認したらForumsの回答と全く同じ

早速、AppleのDeveloper Forumsを探してみると、ほぼ同じ内容で下記2つのスレッドがあった。

 

 

 

現時点で、前者のスレッドは未解決のまま。

 

後者のスレッドでは、冒頭の方でAdMobを使っていると発生するとの情報があるが、使わなくても発生するとのコメントもある。

 

現時点で参考になりそうなのは、最後の方にあるAppleご担当者の回答。 

 

紫の三角マークをクリックしてバックトレース(履歴)を表示させ、個々のトレースについて説明している。

 

つまるところ、WKWebView、セキュリティフレームワーク、Xcodeの3者間の相互連携がうまく行っていないことが原因であり、現時点でその解消予定はないとのこと。

 

したがって、開発者サイドが書いたコードに起因する警告ではないので、気にしなくて良いらしい。

 

改めて自分のXcodeでもバックトレースを開いて確認したところ、上記スレッドに掲載されているバックトレースと全く同じ内容だった。

 

そのため、自分のケースでも気にする必要は無さそうなので、スルーすることにした。

 

初めて見る警告(特に紫の文字のは初めて)だったので戸惑った。

 

\一般的なエラー対処法をまとめた記事はこちら/

 

リリースしたアプリ(全てFlutterで開発)

 

個人アプリ開発で役立ったもの

おすすめの学習教材

超初心者向けでオススメな元Udemyの講座/

 

 \キャンペーン時を狙えば安価で網羅的な内容が学べる(日本語訳あり)/

 

\Gitの基礎について無料で学べる/

 

おすすめの学習書籍

実用的image_pickerに関してかなり助けられた/

 

Dartの基礎文法を素早くインプットできる/


Dart入門 - Dartの要点をつかむためのクイックツアー

タイトルとURLをコピーしました