アプリで didFinishLaunchingWithOptions の終了に時間がかかりすぎて、アプリが終了する可能性があるという問題が発生しました。
アプリの起動に時間がかかりすぎることを示すクラッシュ レポートも iTunes Connect から取得しています。
これは、1 秒以上かかる処理である didFinishLaunchingWithOptions 中にいくつかのテクスチャを同期的に読み込んでいたことが原因である可能性があります。
それを解決するために、遅延後にデータをロードするメソッドを次のように呼び出します。
[self performSelector:@selector(loadTextures) withObject:nil afterDelay:0.5f];
私が理解している方法は、間違っているかもしれませんが、スケジュールされたタスクは別のスレッドで実行されないため、 didFinishLaunchingWithOptions が完了した後にのみ処理されます。
私の質問は次のとおり です。このような問題に対するベストプラクティスの解決策はありますか? 私が提案したソリューションは意図したとおりに機能しますか?
また、アップルのウォッチドッグは、このような場合、起動フェーズの後でもアプリの応答性をチェックすることで知られていますか?