2011-11-07 118 views
4

我的應用程序在Xcode 4.2使用的iOS5和的iOS4.3 iPhone模擬器崩潰,堆棧跟蹤示出了在[FlurryAPI stopBackgroundTask]方法BAD_ACCESS信號。亂舞API崩潰iPhone模擬器

雖然在iOS4.3模擬器中,應用程序僅在將應用程序發送到後臺時崩潰,但在iOS5中總是崩潰。我正在附加調試導航器的圖片,以顯示BAD_ACCESS正在發生的線程。

在另一方面的應用程序工作正常使用真實的設備。

的任何想法我怎麼能得到什麼是怎麼回事,爲什麼發生這種情況的更多信息?

enter image description here

+1

在升級到最新的Flurry庫後(並用FlurryAnalytics替換舊的FlurryAPI調用...) – avocade

+1

這是Flurry爲其代理創建的線程中發生的事情[FlurryAnalytics startSession:FLURRYAPIKEY]在我們的代碼中。仍然不知道如何檢查導致問題的電話來自哪裏。 – yeforriak

+0

同樣的問題在這裏,找不到修復程序。我更新到Flurry 3.0.4,並仍然在模擬器中出現問題,包括4.3和5.0。 – DaGaMs

回答

7

我已通過添加解決此問題的工作下,以didFinishLaunchingWithOptions

#if TARGET_IPHONE_SIMULATOR 
     [FlurryAnalytics setSessionReportsOnPauseEnabled:NO]; 
#endif 
+0

謝謝你!這對我有效。 – ruyamonis346

1

它看起來像你有一個殭屍 - 你有你使用的代碼,你已經發布後的情況。保留計數達到零,因此係統解除分配並重新使用內存,然後通過原始參考進行更改。現在你對同一個內存有兩個不同的引用,每個引用都期望有一個不同的對象存在。在你的情況下,其中一個參考文件是亂七八糟的。

您的設備/模擬器差異的原因是兩種架構使用不同的內存分配方案 - 模擬器似乎非常積極地重新使用內存。

啓用NSZombie並在調試運行。如果你幸運的話,它會給你在釋放後使用的對象和點。啓動NSZombie:菜單'產品','編輯方案','運行'頁面,'診斷'標籤,勾選'啓用殭屍對象'。

+0

感謝您的答案,但啓用NSZombies不給我任何額外的信息:( – yeforriak

2

亂舞Analytics不超過主線程運行其他。它可能會在後臺線程上崩潰。