我的应用程序仅在我将其加载到应用商店后才会崩溃。
一些背景知识,我已经在多个物理设备上通过试飞测试了该应用程序。该应用程序不会在所有设备上崩溃,首先安装在设备上可以正常工作(从未安装过该应用程序的设备)。在我测试过的大多数设备上安装之前安装了该应用程序的设备。即使我先从设备上删除了该应用程序,然后从应用程序商店安装它,也会发生这种情况。
另一件事是在设备上发生了崩溃,从应用商店安装时,它首先安装了旧版本,然后允许我更新到新版本。在没有崩溃的设备上,它直接加载了新版本(无需先安装旧版本)。
任何如何解决这个问题的想法都将受到高度赞赏,以及如何在我的开发/测试环境中复制该问题的想法。
以下是其中一台设备的崩溃日志:
Incident Identifier: 2F05957D-D4B0-49A0-9DEC-9F93AC008ED7
CrashReporter Key: 0dcfb6f747b264afdb9bc565deb821964c811b36
Hardware Model: iPhone5,1
Process: SlimNavigator [10283]
Path: /var/mobile/Applications/C4110616-BE4C-4433-9FB9-C43F042D4CCA/SlimNavigator.app/SlimNavigator
Identifier: SlimNavigator
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2013-07-14 20:17:22.268 -0700
OS Version: iOS 6.1.4 (10B350)
Report Version: 104
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000001
Crashed Thread: 0
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 SlimNavigator 0x0010ad46 +[NSHTTPCookieStorage(DeleteForURL) deleteCookiesForURL:] (NSHTTPCookieStorage+DeleteForURL.m:20)
1 dyld 0x2ff076c0 ImageLoaderMachO::doInitialization(ImageLoader:inkContext const&) + 16
2 dyld 0x2ff04a36 ImageLoader::recursiveInitialization(ImageLoader:inkContext const&, unsigned int, ImageLoader::InitializerTimingList&) + 382
3 dyld 0x2ff04870 ImageLoader::runInitializers(ImageLoader:inkContext const&, ImageLoader::InitializerTimingList&) + 36
4 dyld 0x2fefbd0e dyld::initializeMainExecutable() + 174
5 dyld 0x2fefe85e dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 1802
6 dyld 0x2fefb32c dyldbootstrap::start(macho_header const*, int, char const**, long, macho_header const*, unsigned long*) + 604
7 dyld 0x2fefb064 _dyld_start + 60
Thread 0 crashed with ARM Thread State (32-bit):
r0: 0x00000001 r1: 0x2fd8fd3c r2: 0x00000000 r3: 0x2fd8fd68
r4: 0x000000a5 r5: 0x00000000 r6: 0x0010ad55 r7: 0x2fd8eb18
r8: 0x2ff1d674 r9: 0x0000a100 r10: 0x00000000 r11: 0x00000001
ip: 0x0000a100 sp: 0x2fd8eae0 lr: 0x2ff075b5 pc: 0x0010ad46
cpsr: 0x40000030
Binary Images:
0x71000 - 0x20bfff +SlimNavigator armv7 <65ab2d7c06c932f6b3925448d72d95bf> /var/mobile/Applications/C4110616-BE4C-4433-9FB9-C43F042D4CCA/SlimNavigator.app/SlimNavigator
0x2fefa000 - 0x2ff1afff dyld armv7s <67efe80b9d863d6bb30fe51e6e17b070> /usr/lib/dyld
0x304d9000 - 0x305bffff AVFoundation armv7s <56f22385ccb73e31863f1fa9e0b621dd> /System/Library/Frameworks/AVFoundation.framework/AVFoundation
Best Answer-推荐答案 strong>
谢谢大家的回答。问题解决了,我添加了两个更改 1. -all_load 标志到链接器以加载发生崩溃的有问题的库, 2. 删除对崩溃的库方法的可能调用。我仍然不确定为什么在设备上运行发布版本时问题没有表现出来,并且只发生在应用商店的版本中。
根据答案和我的经验,我可以给出的最相关的建议是比较您的调试和发布“build设置”并尝试更改它们以匹配发布设置(“优化级别”是第一个尝试)。
关于iphone - 我的新版 iOS 应用程序仅在从应用商店加载时崩溃,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/17664071/
|