2010-11-14 96 views
1

我遇到了一个iPhone应用程序在选择少数用户启动时崩溃的问题。大多数用户都很好 - 应用程序在应用程序商店中运行,Apple没有发现任何问题,测试时从未发现这些问题。但是,它们存在。iPhone SIGABRT崩溃0x00000000:帮我多选

所以。这是我所知道的。我相信iPod touch用户会遇到这种情况。从崩溃日志我已经从一个用户得到了,我知道了异常代码:

 
Exception Codes: 0x00000000, 0x00000000 

我相信这表明我的应用程序试图写入到内存中的零指针? (大部分完整的崩溃日志下面)。所以,我对可能发生的事情有一些想法,我希望有人能够提供帮助...我有一些理论 - 我希望有更多的想法。麻烦的是,我很难调试,因为我没有遇到任何我的测试设备(iPhone4,iPhone3G,iPodTouch,iPad)的问题... ...

理论1)我定义了几个整数在viewDidLoad中,然后在viewWillAppear中使用它们。我知道愚蠢,但是我认为操作的顺序是viewDidLoad,viewWillAppear,然后是viewDidAppear。情况总是如此吗?我从appDelegate加载这个viewController,如果有帮助... ...

Theory2)我在viewController中创建一个UIViews数组。这些视图是IBOutlets。目前,我在viewDidLoad委托方法中创建了这个数组。这些还不存在吗?如果我等到viewWill或viewDid出现,是否可以解决这个问题?

Theory3)在应用程序中,我有一个自定义委托,它在nib文件中声明自己。它可以在它准备好之前将消息发送给视图控制器吗?

理论4)它与版本最小iOs部署目标有关。目前,我正在对4.1进行构建,但我的开发目标设置为3.1。我不相信我正在使用不存在的方法,但是这可能是根源吗?

任何这些信任?其他人面临类似的问题?非常感谢您的帮助。下面是完整的,或多或少,崩溃报告:

 

Incident Identifier: 2B873C9A-8B07-43FC-A5E9-E83D53A42B35 
CrashReporter Key: 5a39aac7c109610da9b8ed70df794d6feb519f19 
Process:   ## CENSORED FOR EMBARRASSMENT PROTECTION ## 
Path:   /var/mobile/Applications/ 
Identifier:  ## CENSORED FOR EMBARRASSMENT PROTECTION ## 
Version:   ??? (???) 
Code Type:  ARM (Native) 
Parent Process: launchd [1] 

Date/Time:  2010-11-12 18:59:04.099 +0000 
OS Version:  iPhone OS 3.1.3 (7E18) 
Report Version: 104 

Exception Type: EXC_CRASH (SIGABRT) 
Exception Codes: 0x00000000, 0x00000000 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libSystem.B.dylib    0x33994b2c 0x33904000 + 592684 
1 libSystem.B.dylib    0x33994b1a 0x33904000 + 592666 
2 libSystem.B.dylib    0x33994b0e 0x33904000 + 592654 
3 libSystem.B.dylib    0x339abe34 0x33904000 + 687668 
4 libstdc++.6.dylib    0x30800390 0x3079a000 + 418704 
5 libobjc.A.dylib     0x3336e898 0x33366000 + 34968 
6 libstdc++.6.dylib    0x307fda84 0x3079a000 + 408196 
7 libstdc++.6.dylib    0x307fdafc 0x3079a000 + 408316 
8 libstdc++.6.dylib    0x307fdc24 0x3079a000 + 408612 
9 libobjc.A.dylib     0x3336ce54 0x33366000 + 28244 
10 CoreFoundation     0x338ecbf6 0x33857000 + 613366 
11 CoreFoundation     0x33871b12 0x33857000 + 109330 
12 CoreFoundation     0x33868838 0x33857000 + 71736 
13 UkeBank       0x00003cd2 0x1000 + 11474 
14 UIKit       0x3207a8d0 0x31fff000 + 506064 
15 UIKit       0x32077a40 0x31fff000 + 494144 
16 UIKit       0x320773fc 0x31fff000 + 492540 
17 UIKit       0x32076f44 0x31fff000 + 491332 
18 UIKit       0x32079824 0x31fff000 + 501796 
19 UIKit       0x32077a40 0x31fff000 + 494144 
20 UIKit       0x32076f44 0x31fff000 + 491332 
21 UIKit       0x32077c90 0x31fff000 + 494736 
22 UIKit       0x32077a40 0x31fff000 + 494144 
23 UIKit       0x320773fc 0x31fff000 + 492540 
24 UIKit       0x32076f44 0x31fff000 + 491332 
25 UIKit       0x32074954 0x31fff000 + 481620 
26 UIKit       0x32074558 0x31fff000 + 480600 
27 UIKit       0x32088304 0x31fff000 + 561924 
28 UIKit       0x320880b8 0x31fff000 + 561336 
29 UIKit       0x32068750 0x31fff000 + 431952 
30 UIKit       0x32087fd8 0x31fff000 + 561112 
31 UIKit       0x32087d90 0x31fff000 + 560528 
32 UIKit       0x32087c3c 0x31fff000 + 560188 
33 UIKit       0x3208763c 0x31fff000 + 558652 
34 UIKit       0x320873a8 0x31fff000 + 557992 
35 UIKit       0x32087298 0x31fff000 + 557720 
36 UIKit       0x3206b86c 0x31fff000 + 444524 
37 UIKit       0x320472d0 0x31fff000 + 295632 
38 QuartzCore      0x31b651b8 0x31b59000 + 49592 
39 QuartzCore      0x31b64ed4 0x31b59000 + 48852 
40 QuartzCore      0x31b6483c 0x31b59000 + 47164 
41 QuartzCore      0x31b6446c 0x31b59000 + 46188 
42 QuartzCore      0x31b64318 0x31b59000 + 45848 
43 UIKit       0x32051e94 0x31fff000 + 339604 
44 UIKit       0x32003a80 0x31fff000 + 19072 
45 UIKit       0x32054df8 0x31fff000 + 351736 
46 UIKit       0x32054634 0x31fff000 + 349748 
47 UIKit       0x3205408c 0x31fff000 + 348300 
48 GraphicsServices    0x3434f7dc 0x3434a000 + 22492 
49 CoreFoundation     0x338ae524 0x33857000 + 357668 
50 CoreFoundation     0x338adc18 0x33857000 + 355352 
51 UIKit       0x32002c00 0x31fff000 + 15360 
52 UIKit       0x32001228 0x31fff000 + 8744 
53 UkeBank       0x0000213c 0x1000 + 4412 
54 UkeBank       0x0000210c 0x1000 + 4364 

Thread 1: 
0 libSystem.B.dylib    0x33905488 0x33904000 + 5256 
1 libSystem.B.dylib    0x33908064 0x33904000 + 16484 
2 CoreFoundation     0x338ae002 0x33857000 + 356354 
3 CoreFoundation     0x338adc18 0x33857000 + 355352 
4 WebCore       0x33ac61d4 0x33a42000 + 541140 
5 libSystem.B.dylib    0x3392f780 0x33904000 + 178048 

Thread 0 crashed with ARM Thread State: 
    r0: 0x00000000 r1: 0x00000000  r2: 0x00000001  r3: 0x385333cc 
    r4: 0x00000006 r5: 0x0012e6ac  r6: 0x2fffccfc  r7: 0x2fffcd0c 
    r8: 0x385265c4 r9: 0x0000000a  r10: 0x30cb8524  r11: 0x00000000 
    ip: 0x00000025 sp: 0x2fffcd0c  lr: 0x33994b21  pc: 0x33994b2c 
    cpsr: 0x00070010 

Binary Images: 
    0x1000 -  0x9fff +UkeBank armv6 /var/mobile/Applications/6D5DFEC6-21DF-431C-B2B2-DEACE4366B61/UkeBank.app/UkeBank 
    0x6a000 - 0x6bfff dns.so armv6 /usr/lib/info/dns.so 
0x2fe00000 - 0x2fe26fff dyld armv6 /usr/lib/dyld 
0x30092000 - 0x300c6fff Security armv6 /System/Library/Frameworks/Security.framework/Security 
0x300ca000 - 0x3021efff AudioToolbox armv6 /System/Library/Frameworks/AudioToolbox.framework/AudioToolbox 
0x30343000 - 0x3034cfff SpringBoardServices armv6 /System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices 
0x30490000 - 0x30591fff libicucore.A.dylib armv6 /usr/lib/libicucore.A.dylib 
0x3079a000 - 0x30804fff libstdc++.6.dylib armv6 /usr/lib/libstdc++.6.dylib 
0x30805000 - 0x30902fff JavaScriptCore armv6 /System/Library/PrivateFrameworks/JavaScriptCore.framework/JavaScriptCore 
0x30f96000 - 0x30f97fff CoreSurface armv6 /System/Library/PrivateFrameworks/CoreSurface.framework/CoreSurface 
0x30fba000 - 0x31067fff ImageIO armv6 /System/Library/PrivateFrameworks/ImageIO.framework/ImageIO 
0x310b3000 - 0x310bdfff libkxld.dylib armv6 /usr/lib/system/libkxld.dylib 
0x310be000 - 0x31278fff CoreGraphics armv6 /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics 
0x3138c000 - 0x313aafff AddressBook armv6 /System/Library/Frameworks/AddressBook.framework/AddressBook 
0x313e2000 - 0x3143dfff CoreAudio armv6 /System/Library/Frameworks/CoreAudio.framework/CoreAudio 
0x31465000 - 0x314a2fff libCGFreetype.A.dylib armv6 /System/Library/Frameworks/CoreGraphics.framework/Resources/libCGFreetype.A.dylib 
0x31546000 - 0x315f3fff WebKit armv6 /System/Library/PrivateFrameworks/WebKit.framework/WebKit 
0x31600000 - 0x3164dfff IOKit armv6 /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit 
0x31767000 - 0x3176dfff liblockdown.dylib armv6 /usr/lib/liblockdown.dylib 
0x318f1000 - 0x3195efff CFNetwork armv6 /System/Library/Frameworks/CFNetwork.framework/CFNetwork 
0x319c4000 - 0x319fffff CoreTelephony armv6 /System/Library/PrivateFrameworks/CoreTelephony.framework/CoreTelephony 
0x31a00000 - 0x31a0afff MobileCoreServices armv6 /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices 
0x31b59000 - 0x31c03fff QuartzCore armv6 /System/Library/Frameworks/QuartzCore.framework/QuartzCore 
0x31c04000 - 0x31c38fff SystemConfiguration armv6 /System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration 
0x31ca1000 - 0x31cdffff CoreText armv6 /System/Library/PrivateFrameworks/CoreText.framework/CoreText 
0x31d09000 - 0x31dfffff libxml2.2.dylib armv6 /usr/lib/libxml2.2.dylib 
0x31fd7000 - 0x31ffefff AppSupport armv6 /System/Library/PrivateFrameworks/AppSupport.framework/AppSupport 
0x31fff000 - 0x32df0fff UIKit armv6 /System/Library/Frameworks/UIKit.framework/UIKit 
0x32e05000 - 0x32e5ffff libsqlite3.dylib armv6 /usr/lib/libsqlite3.dylib 
0x32e78000 - 0x32f70fff Foundation armv6 /System/Library/Frameworks/Foundation.framework/Foundation 
0x32f71000 - 0x32f79fff libgcc_s.1.dylib armv6 /usr/lib/libgcc_s.1.dylib 
0x32f7a000 - 0x32f91fff OpenGLES armv6 /System/Library/Frameworks/OpenGLES.framework/OpenGLES 
0x33242000 - 0x3324efff CoreVideo armv6 /System/Library/PrivateFrameworks/CoreVideo.framework/CoreVideo 
0x3324f000 - 0x3324ffff vecLib armv6 /System/Library/PrivateFrameworks/Accelerate.framework/Frameworks/vecLib.framework/vecLib 
0x332b2000 - 0x332c2fff libbsm.0.dylib armv6 /usr/lib/libbsm.0.dylib 
0x332e8000 - 0x332e9fff IOMobileFramebuffer armv6 /System/Library/PrivateFrameworks/IOMobileFramebuffer.framework/IOMobileFramebuffer 
0x3335f000 - 0x33365fff MBX2D armv6 /System/Library/PrivateFrameworks/MBX2D.framework/MBX2D 
0x33366000 - 0x33409fff libobjc.A.dylib armv6 /usr/lib/libobjc.A.dylib 
0x3342f000 - 0x33437fff AVFoundation armv6 /System/Library/Frameworks/AVFoundation.framework/AVFoundation 
0x33730000 - 0x3373efff libz.1.dylib armv6 /usr/lib/libz.1.dylib 
0x337df000 - 0x337fdfff libresolv.9.dylib armv6 /usr/lib/libresolv.9.dylib 
0x33856000 - 0x33856fff Accelerate armv6 /System/Library/PrivateFrameworks/Accelerate.framework/Accelerate 
0x33857000 - 0x33903fff CoreFoundation armv6 /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation 
0x33904000 - 0x33a2afff libSystem.B.dylib armv6 /usr/lib/libSystem.B.dylib 
0x33a3d000 - 0x33a41fff IOSurface armv6 /System/Library/PrivateFrameworks/IOSurface.framework/IOSurface 
0x33a42000 - 0x34195fff WebCore armv6 /System/Library/PrivateFrameworks/WebCore.framework/WebCore 
0x3430f000 - 0x34349fff libvDSP.dylib armv6 /System/Library/PrivateFrameworks/Accelerate.framework/Frameworks/vecLib.framework/libvDSP.dylib 
0x3434a000 - 0x34355fff GraphicsServices armv6 /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices 

+0

非常感谢迄今为止的答案 - 我会考虑这两个。另外一个信息:提交此崩溃报告的用户告诉我,在他恢复了他的ipodtouch(他一直有其他问题)后,我的应用运行良好。不过,还有其他用户遇到过崩溃。这个恢复修复是否能够让我们更深入地了解潜在的问题? – 2010-11-14 22:19:06

+0

嘿,你有没有发现问题是什么?我陷入了类似的局面 – alemangui 2013-02-19 13:57:47

回答

1

13 UkeBank 0x00003cd2×1000 + 11474

那它是怎么了?(在应用程序中假设的错误,而不是最有可能框架)。弄清楚你的代码在那里做什么(使用调试符号和/或修剪器),并且你将走上一个不仅仅是猜测的理论之路。

2

我以前也有类似的问题,对我来说,解决办法是薄弱环节libSystem.B.dylib

1)打开目标的属性(双击目标在“组&文件”窗格左侧)。

2.)转到常规选项卡。

3.)找到列出的“libSystem.B.dylib”并将“必需”更改为“弱”。

如果libSystem.B。dylib没有列出,然后通过“Existing Frameworks”添加它。

+0

这个或者其他的东西可能是解决方案 - 我要仔细检查,然后将其标记为接受,如果它有效的话。此软件的以前版本使用RegExKitLite,它链接到libicucore.A.dylib。也许这个链接导致类似的错误?你碰巧知道libSystem.B.dylib负责什么?非常感谢 - 现在投票。 – 2010-11-16 17:02:33

+0

libSystem.B.dylib与块有关。您可能不会自己使用块,但您正在使用的库可能会有条件地使用它们。即使块中的代码从未在您的应用中执行,它仍会在启动时崩溃,因为各种库都已加载。 – 2010-11-17 00:43:54