[英]Archived app crashes only on iOS 5.1 not on 5.0
I have archived my app and given for testing. 我已经存档了我的应用程序,并准备进行测试。
when i run this app , I dont find any crash on ios5 Version.( i dont have 5.1 device) But my client has 5.1 version, when he tried he got crash when tapping on some button inside the app. 当我运行此应用程序时,我没有在ios5版本上发现任何崩溃。(我没有5.1设备)但是我的客户端具有5.1版本,当他尝试按一下应用程序内的某些按钮时遇到崩溃的情况。
So i have asked him the crash report which look as below 所以我问他崩溃报告如下
Date/Time: 2012-04-23 12:54:10.320 +1000
OS Version: iPhone OS 5.1 (9B179)
Report Version: 104
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread: 0
Last Exception Backtrace:
(0x3788488f 0x35d8a259 0x37884789 0x378847ab 0x38037a1b 0x9451 0x2493b 0x33f69e33 0x33f76391 0x33f76201 0x33f760e7 0x33f75969 0x33f756ab 0x33f69ca7 0x33f6997d 0xb397 0xc21f 0x3408f3cb 0x377de3fd 0x33f4bfaf 0x33f4bf6b 0x33f4bf49 0x33f4bcb9 0x33f4c5f1 0x33f4aad3 0x33f4a4c1 0x33f3083d 0x33f300e3 0x326e822b 0x37858523 0x378584c5 0x37857313 0x377da4a5 0x377da36d 0x326e7439 0x33f5ee7d 0x25f7 0x25b0)
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x35d0332c 0x35cf2000 + 70444
1 libsystem_c.dylib 0x31e51208 0x31e04000 + 315912
2 libsystem_c.dylib 0x31e4a298 0x31e04000 + 287384
3 libc++abi.dylib 0x35456f64 0x35450000 + 28516
4 libc++abi.dylib 0x35454346 0x35450000 + 17222
5 libobjc.A.dylib 0x35d8a350 0x35d81000 + 37712
6 libc++abi.dylib 0x354543be 0x35450000 + 17342
7 libc++abi.dylib 0x3545444a 0x35450000 + 17482
8 libc++abi.dylib 0x3545581e 0x35450000 + 22558
9 libobjc.A.dylib 0x35d8a2a2 0x35d81000 + 37538
10 CoreFoundation 0x377da506 0x377cb000 + 62726
11 CoreFoundation 0x377da366 0x377cb000 + 62310
12 GraphicsServices 0x326e7432 0x326e3000 + 17458
13 UIKit 0x33f5ee76 0x33f2d000 + 204406
14 MyApp 0x000025f0 0x1000 + 5616
15 MyApp 0x000025a8 0x1000 + 5544
When i do debug the crash report in terminal, 当我在终端中调试崩溃报告时,
armv7 0x000025f0 main (in MyApp) (main.m:14) armv7 0x000025f0 main(在MyApp中)(main.m:14)
armv7 0x000025a8 start (in MyApp) + 32 armv7 0x000025a8启动(在MyApp中)+ 32
But i am not sure what it describes , please let me know that what it explains 但是我不确定它的含义,请让我知道它的含义
Thanks a lot for your help. 非常感谢你的帮助。
SIGABRT is the most generic type of crash. SIGABRT是最常见的崩溃类型。 If you are running say an iPhone 3gs and your client is using a newer iPhone 4/4s for example you could be compiling for different architectures (Armv6/7) make sure its set to Armv6 in that case and it also looks like one of the methods you are using may be deprecated. 例如,如果您正在运行iPhone 3gs,而客户端使用的是更新的iPhone 4 / 4s,则可能要针对不同的体系结构(Armv6 / 7)进行编译,请确保在这种情况下将其设置为Armv6,并且看起来像其中之一您使用的方法可能已被弃用。 Look for code in main.m. 在main.m中查找代码。 There are a lot of instances where you have to use iOS version difference code (but most of it is for iOS4/iOS5) 在很多情况下,您必须使用iOS版本差异代码(但大多数情况是针对iOS4 / iOS5)
I had the same problem, I was using core data in my app, so if you are using core data, maybe this answer will help you, I fixed mine by changing the persistentStoreCoordinator
store code. 我遇到了同样的问题,我在应用程序中使用了核心数据,因此,如果您使用的是核心数据,也许这个答案将对您有所帮助,我通过更改persistentStoreCoordinator
存储代码来修复了我的问题。
....
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
if (persistentStoreCoordinator != nil) {
return persistentStoreCoordinator;
}
NSURL *storeUrl = [NSURL fileURLWithPath:[[self applicationDocumentsDirectory] stringByAppendingFormat:@"yourdb.sqlite"]] ;
....
Check this line 检查这条线
NSURL *storeUrl = [NSURL fileURLWithPath:[[self applicationDocumentsDirectory] stringByAppendingFormat:@"yourdb.sqlite"]] ;
Changed the above line to 将上面的行更改为
NSURL *storeUrl = [NSURL fileURLWithPath:[[self applicationDocumentsDirectory] stringByAppendingPathComponent:@"yourdb.sqlite"]] ;
This just solved my problem. 这就解决了我的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.