0

バックグラウンド:

App Store でアプリをリリースします。現在、一部のユーザーは問題を反映しています。アプリをインストールして起動すると、起動ページまたは他のページでアプリがブロックされました。

私が興味を持っているのは、UI スレッドをブロックする実行中の関数を検出する方法がいくつかある場合です。

問題を満たす iPhone を持っている場合は、Instruments を使用してプロセスに接続し、時間のかかるユニットを見つけることができるかもしれません。

しかし、常に本物の iPhone を持っているとは限りません。事前にコードを書き、問題が発生したときにコール スタックをディスク上のログに書き込むことはできますか?

どうもありがとう。

4

2 に答える 2

0

私の理解が正しければ、あなたのアプリケーションは起動時に重い処理を行っています。は基本的に悪い癖です。アプリは、大量の作業を行う前に、常に起動フェーズをバイパスする必要があります。そのため、多くのアプリでは、起動時に「読み込み中...」または「お待ちください...」または軽いアニメーションの画像などが表示されます。 解決策: WWDC 2012の Up and Running: Making a Great Impression with Every Launch (セッション 225) を 視聴してみてください。ウォッチドッグを台無しにしないようにしてください!独自のロギング メカニズムを作成します。時間枠と各行の参照を txt ファイルに書き込みます。そのファイルが存在する場合は、起動するたびに、application:didFinishLaunchingWithOptions:またはmainそのファイルを取得し、他のソリューションで言及されているレポート ソリューションの 1 つを使用してレポートします。実際にデバイスを持っている場合は、 NSLog(@"%@ happend", eventName) コンソールを使用してイベント ログを確認してください。また、無料でオープンソースのplcrashreporterも使用しています。お役に立てれば

于 2013-05-11T18:58:50.657 に答える