1

我在 iTunes Connect 上收到了这些崩溃报告。似乎它以某种方式与 adsIdentifier 相关,它在 2 个不同的线程上调用。

你遇到过这样的事情吗?你能说出是什么原因造成的吗?

Exception Type:  00000020
Exception Codes: 0x000000008badf00d
Highlighted Thread:  0

Application Specific Information:
xxxx failed to resume in time

Elapsed total CPU time (seconds): 7.840 (user 7.840, system 0.000), 42% CPU 
Elapsed application CPU time (seconds): 0.001, 0% CPU

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib          0x3b906eb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x3b907048 mach_msg + 36
2   MobileCoreServices              0x34a2d824 _LSPluginClient_GetAdvertisingIdentifier + 48
3   MobileCoreServices              0x34a319b4 _LSCopyAdvertisingIdentifier + 36
4   MobileCoreServices              0x34a19320 __56-[LSApplicationWorkspace deviceIdentifierForAdvertising]_block_invoke_0 + 8
5   libdispatch.dylib               0x3b8304b4 _dispatch_client_callout + 20
6   libdispatch.dylib               0x3b8363f2 dispatch_once_f$VARIANT$mp + 38
7   MobileCoreServices              0x34a192a6 -[LSApplicationWorkspace deviceIdentifierForAdvertising] + 34
8   AdSupport                       0x32e52db2 -[ASIdentifierManager advertisingIdentifier] + 54
9   xxxx                    0x001f0f9e +[CBIdentity cbuia] + 62
10  xxxx                    0x001f121a +[CBIdentity combinedIdentifier] + 134
11  xxxx                    0x001f0e38 +[CBIdentity hexIdentifier] + 28
12  xxxx                    0x001ecade -[CBAPIRequest appendDeviceInfoParams] + 418
13  xxxx                    0x001e908a -[Chartboost startSession] + 254
14  xxxx                    0x0014eda2 -[AppDelegate application:didFinishLaunchingWithOptions:] (AppDelegate.mm:317)

...

Thread 5:
0   libsystem_kernel.dylib          0x3b906f04 semaphore_wait_trap + 8
1   libdispatch.dylib               0x3b8362fc _dispatch_thread_semaphore_wait$VARIANT$mp + 8
2   libdispatch.dylib               0x3b83644a dispatch_once_f$VARIANT$mp + 126
3   MobileCoreServices              0x34a192a6 -[LSApplicationWorkspace deviceIdentifierForAdvertising] + 34
4   AdSupport                       0x32e52db2 -[ASIdentifierManager advertisingIdentifier] + 54
5   xxxx                    0x0026bed6 +[FlurryUtil getIdentifierForAdvertiser] + 66
6   xxxx                    0x002687b2 -[FlurrySession dataForSessions:] + 786
7   xxxx                    0x002677c8 -[FlurrySession sendSessionsToServerIncludingCurrentSession:] + 512
8   xxxx                    0x002675c2 -[FlurrySession sendSessionsToServerForCreateSession] + 18
9   xxxx                    0x00273a82 __50-[FlurryImpl sendSessionsToServerForCreateSession]_block_invoke_0 + 34
4

2 回答 2

1

广告 ID 是从加密文件中读取的,因此如果用户重新启动并且没有使用 pin 解锁手机,则访问标识符将返回 null,如果该应用程序不准备处理它可能会崩溃。

于 2014-05-07T04:30:02.117 回答
0

我很确定它与后台任务相关,在您的情况下,ChartBoost 和 Flurry 都在执行后台任务。

在应用程序挂起时进行后台网络调用时,我看到了相同的效果,当我认为分析框架和其他东西也在做一些后台工作时......

在我的情况下,我确保我正在执行的网络调用在十秒内完成,此时我终止了后台任务,或者如果它更早完成,我也终止了后台任务。当应用程序即将恢复时,我还终止了后台任务。

如果您在后台任务中所做的只是图书馆正在做的任何工作,那么请尝试删除一个并查看您是否有同样的问题。最坏的情况是,您可能会弄清楚如何阻止其中一个库进行后台处理(我认为 Flurry 至少有一个选项,您可以告诉它不要在后台发送数据),看看这是否也有帮助。

于 2013-08-29T17:19:12.150 回答