私はまだアプリの開発中で、アプリを「実行」するたびに、2 回に 1 回クラッシュします。クラッシュすると、スプラッシュ ページでアプリがフリーズし、次のようなエラーが表示されます。
スプラッシュページと何か関係があるのでしょうか? アプリが 2 回に 1 回クラッシュするのはとても奇妙です。誰でも思いつきましたか?
私はまだアプリの開発中で、アプリを「実行」するたびに、2 回に 1 回クラッシュします。クラッシュすると、スプラッシュ ページでアプリがフリーズし、次のようなエラーが表示されます。
スプラッシュページと何か関係があるのでしょうか? アプリが 2 回に 1 回クラッシュするのはとても奇妙です。誰でも思いつきましたか?
少し古いツールを使用している場合、これに関連している可能性があります。
http://www.tuaw.com/2013/06/05/devjuice-10-8-4-and-the-ios-simulator/
この問題は、debugserver のプロセス競合状態で発生します。GDB を使用する代わりに、実行を強制終了し、アプリが終了するまで数秒待ってから、次の反復を実行することもできます。
簡単な修正:
[製品] > [スキーム] > [スキームの編集] を選択してスキームを更新し、デバッグ スキームの GDB デバッガーを選択します。
しかし、実際にはツールを更新する必要があります。
私の標準的なデバッグワークフロー - エラーの原因が不明な場合 - AppDelegate メソッドのすべてをコメントアウトします - 主に - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
そしてこれらにも、あなたがそこに何かあれば:
- (void)applicationWillResignActive:(UIApplication *)application
- (void)applicationDidEnterBackground:(UIApplication *)application
- (void)applicationWillEnterForeground:(UIApplication *)application
- (void)applicationDidBecomeActive:(UIApplication *)application
次に、クラッシュが発生しなくなったら、コメントの解除を開始します。クラッシュするコード行 (またはコード ブロック) を見つけたら、それをさらに詳しく調べます。
幸運を!
例外ブレークポイントを追加して、コード内でクラッシュしている場所を確認します: https://developer.apple.com/library/ios/recipes/xcode_help-breakpoint_navigator/articles/adding_an_exception_breakpoint.html