我在我的最新應用版本中遇到了一致的問題。我有一個在AppDelegate中運行的計時器,每隔30秒調用一次函數來加載一個新的廣告。我認爲這是這次事故的罪魁禍首。使用Crittercism,我已經爲13個用戶發生了20多次崩潰。用戶主要使用IOS 6或它的一些變體。這裏是日誌,它的給我:從後臺返回後,計時器循環偶爾崩潰
SEGV_ACCERR
0 libobjc.A.dylib 0x3acd25b0 objc_msgSend + 16
1基金會0x3394b277 __NSFireDelayedPerform + 451
2的CoreFoundation 0x330125df CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION + 15
3 CoreFoundation 0x33012291 __CFRunLoopDoTimer + 273
4的CoreFoundation 0x33010f01 __CFRunLoopRun + 1233
5的CoreFoundation 0x32f83ebd CFRunLoopRunSpecific + 357
6的CoreFoundation 0x32f83d49 CFRunLoopRunInMode + 105
7個GraphicsServices 0x36b452eb GSEventRunModal + 75
8的UIKit 0x34e99301 UIApplicationMain + 1121
9 AutoScene 0x000031b7 main(main。 L:7)
我的計時器是:
[NSTimer scheduledTimerWithTimeInterval:30 target:self selector:@selector(resetAdTimer) userInfo:nil repeats:YES];
我不知道這是否是同樣的問題,但如果我從後臺返回應用程序,它只是掛起我所經歷的時間。它似乎也掛了30秒,這導致我相信這是計時器代碼。
這是管理廣告抓取的糟糕方式嗎?定時器代碼在長時間進入背景時是否會擰緊?
感謝您的幫助!