0

非常に奇妙なEXEC_BAD_ACCESSエラーが発生しました。このエラーは、アプリケーションの起動時に発生します。ブレークポイントまたはNSLogに到達しなかったため、UIApplicationMain(argc、argv、nil、NSStringFromClass([AppDelegate class]))が呼び出されたときにキャンセルされます。

デバイスや機器ではなく、シミュレーターでのみクラッシュします。ゾンビから情報が得られません。シミュレータでGUARDMALLOCを有効にしても、クラッシュしません。EXEC_BAD_ACCESSは、常に同じメモリアドレスで発生します。

次のバックトレースを取得できます

#0  0xcd58a2f6 in ?? ()
#1  0x0102b524 in -[UIWindow _commonInit] ()
#2  0x0102b66f in -[UIWindow initWithFrame:] ()
#3  0x0137be58 in -[UIStatusBarWindow initWithFrame:] ()
#4  0x0103c28f in -[UIView init] ()
#5  0x01000a5e in -[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:] ()
#6  0x00ffbe6b in -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] ()
#7  0x0100d315 in -[UIApplication handleEvent:withNewEvent:] ()
#8  0x0100e24b in -[UIApplication sendEvent:] ()
#9  0x00fffcf8 in _UIApplicationHandleEvent ()
#10 0x02fe7df9 in _PurpleEventCallback ()
#11 0x02fe7ad0 in PurpleEventCallback ()
#12 0x022cabf5 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ ()
#13 0x022ca962 in __CFRunLoopDoSource1 ()
#14 0x022fbbb6 in __CFRunLoopRun ()
#15 0x022faf44 in CFRunLoopRunSpecific ()
#16 0x022fae1b in CFRunLoopRunInMode ()
#17 0x00ffb7da in -[UIApplication _run] ()
#18 0x00ffd65c in UIApplicationMain ()
#19 0x00002ea2 in main (argc=1, argv=0xbffff2a0) at /Users/user/Projects/App/App/main.m:16

私が得る記憶についての情報を得ようとすると

Cannot access memory at address 0xcd58a2f6

コードを変更すると解決できることもありますが、他の関数でローカル変数を作成するだけで解決できるので、問題はもう少し深いと思います。

エラーが発生したときにdidFinishLaunchingWithOptionsに到達しないため、少し混乱しています。ビューコントローラーにどのような影響を与える可能性がありますか?

サードパーティのコンポーネントとして、私はPhonegap2.1をコンポーネントおよびAppleのReachabilityとして使用しています。

4

2 に答える 2

1

xib の問題ではないと仮定すると、atos (シンボルへのアドレス) デバッグを使用して、問題の場所を見つけることができます。

この方法に関する優れたチュートリアルは、http://saveme-dot-txt.blogspot.com/2011/04/using-atos-for-reading-crash-logs.htmlにあります。

于 2012-10-22T20:50:15.653 に答える
1

例外ブレークポイントを追加して、エラーの場所を取得できます。これは、同じチュートリアルの素晴らしいリンクです。それがうまくいくことを願っています。

リンクはこちら。

于 2012-10-22T12:22:12.940 に答える