iphone - 我的新版 iOS 应用程序仅在从应用程序商店加载时才会崩溃

标签 iphone ios ipad app-store

我的应用程序仅在将其加载到应用程序商店后才会崩溃。

一些背景知识,我已经在多个物理设备上通过试飞测试了该应用程序。该应用程序不会在所有设备上崩溃,首先在设备上安装可以正常工作(从未安装过该应用程序的设备)。在之前安装过该应用程序的设备上安装会导致我测试过的大多数设备崩溃。即使我首先从设备中删除应用程序,然后从应用程序商店安装它,也会发生这种情况。

另一件事是,在设备上发生崩溃,从应用程序商店安装时,它首先安装旧版本,然后允许我更新到新版本。在设备上,它不会崩溃,而是直接加载新版本(无需先安装旧版本)。

任何如何解决此问题的想法都将受到高度赞赏,以及如何在我的开发/测试环境中复制该问题的想法。

以下是其中一台设备的崩溃日志:

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::LinkContext const&) + 16
2   dyld            0x2ff04a36 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&) + 382
3   dyld            0x2ff04870 ImageLoader::runInitializers(ImageLoader::LinkContext 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

最佳答案

谢谢大家的回答。问题解决了,我添加了两个更改 1. -all_load 标志到链接器以加载发生崩溃的有问题的库,2. 删除对崩溃的库方法的可能调用。我仍然不确定为什么在设备上运行发布版本时问题不会自行显现,而仅在应用商店中的版本中发生。

根据答案和我的经验,我可以给出的最相关的建议是比较您的调试和发布“build设置”,并尝试更改它们以匹配发布设置(“优化级别”是第一个尝试)。

关于iphone - 我的新版 iOS 应用程序仅在从应用程序商店加载时才会崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17664071/

相关文章:

jquery - 允许 ics 在 iOS 的 phonegap 应用程序中打开

ios - 适用于企业内部APP的iOS推送通知

ios - 旋转后键盘延伸高度不正确

ios - 这是键盘遮挡内容的有效解决方法吗

objective-c - 什么时候通过 iOS/Objective-C 中的代码操作屏幕控件是安全的

ios - 如果不运行使用它的应用程序,可以在 iPad 上看到 Core Data 吗?

HTML 正文背景图片在 iOS 5 中不起作用

iOS 应用程序图像/图标位深度

iOS - iPad 背景图像被剪短

iphone - 在 iOS 中获取基站信息(CoreTelephony?)