【发布时间】:2011-08-04 07:50:23
【问题描述】:
我遇到了崩溃,在我看来,这似乎是 Apple 处理 MKMapView 的goToDefaultLocation 消息的方式中的一个错误。该消息依次调用[ALCityManager localeWithCode:],后者调用[NSLocale componentsFromLocaleIdentifier:],后者调用CFLocaleCreateComponentsFromLocaleIdentifier,后者又调用CFStringGetLength,然后发生崩溃。
如果是我的代码导致了这个问题,或者,如果实际上这是 Apple 代码中的一个错误(不太可能? ?)。
崩溃日志如下:
事件标识符:84198BB6-45BD-493B-955F-75CCB5246DDD CrashReporter 密钥:7dbf53bf1f1a3635d7c3c49e726dedc609ed9f3a 硬件型号:iPhone3,1 进程:MyApp [340] 路径:/var/mobile/Applications/DCE9A5A1-8E24-4D4F-A1ED-9855C6CA1742/MyApp.app/MyApp 标识符:MyApp 版本: ??? (???) 代码类型:ARM(本机) 父进程:launchd [1] 日期/时间:2011-03-25 10:36:06.382 -0700 操作系统版本:iPhone OS 4.3 (8F190) 报告版本:104 异常类型:EXC_BAD_ACCESS (SIGBUS) 异常代码:0x00000000 处的 KERN_PROTECTION_FAILURE 崩溃的线程:0 线程 0 名称:调度队列:com.apple.main-thread 线程 0 崩溃: 0 核心基础 0x00009a66 CFStringGetLength + 6 1 CoreFoundation 0x0002f994 CFLocaleCreateComponentsFromLocaleIdentifier + 60 2 CoreFoundation 0x000483b8 +[NSLocale componentsFromLocaleIdentifier:] + 12 3 AppSupport 0x00016eee -[ALCityManager localeWithCode:] + 130 4 MapKit 0x00038488 - [MKMapView goToDefaultLocation] + 80 5 基础 0x000907c6 __NSFireTimer + 130 6 核心基础 0x00075a40 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8 7 核心基础 0x00077ec4 __CFRunLoopDoTimer + 844 8 核心基础 0x0007883e __CFRunLoopRun + 1082 9 核心基础 0x00008ebc CFRunLoopRunSpecific + 224 10 核心基础 0x00008dc4 CFRunLoopRunInMode + 52 11 图形服务 0x00004418 GSEventRunModal + 108 12 图形服务 0x000044c4 GSEventRun + 56 13 UIKit 0x0002ed62-[UIApplication_run] + 398 14 UIKit 0x0002c800 UIApplicationMain + 664 15 MyApp 0x000023f0 主 (main.m:34) 16 我的应用程序 0x00002370 开始 + 44【问题讨论】:
-
除非您发布代码,否则很难知道您的代码中是否存在错误。 goToDefaultLocation 不是 MKMapView 的文档化公共方法。发生此崩溃时,您实际上在代码中做了什么?
-
Nothing -> 崩溃发生在启动时。
标签: iphone ios ipad mapkit mkmapview