簡體   English   中英

Xcode 內存警告 - 無法加載任何 Objective-C 類信息

[英]Xcode memory warning - could not load any Objective-C class information

在使用 Facebook 和 Parse 記錄用戶時,我只在舊的 iPhone4s 上收到此錯誤。 當我在模擬器上運行它時,這個錯誤永遠不會發生。

發生這種情況時,應用程序僅從內存中占用了 21.2MB,僅占我測試 4 秒可用內存的 4.2%。

我不太確定從哪里開始修復這個錯誤。 老實說完全輸了。

2015-11-12 08:09:27.647 APPNAME[3883:426582] 收到內存警告。 警告:無法加載任何 Objective-C 類信息。 這將顯着降低可用類型信息的質量。 (lldb)

關於這個問題的一些更新,如果你仍然認為它是重復的,我會刪除它。 盡管您作為副本提出的問題實際上並不能幫助我解決問題。

我可以通過減少同時發生的查詢數量並使用 Parse 來部分消除錯誤。 該應用程序為了首次啟動並注冊新用戶,我需要:

  • 用臉書登錄
  • 查詢facebook圖表數據
  • 將 facebook 圖形數據添加到 Parse 用戶
  • 創建聲譽表並關聯
  • 啟動主屏幕
  • 查詢信譽
  • 查詢條款和條件
  • 查詢教程狀態

通過刪除最后兩個,我可以在應用程序使用的第一秒內得到警告消失。 然后讓應用程序在沒有交互的情況下運行 10 分鍾后,我收到警告/錯誤。

這讓我想到,如果您在后台同時發生許多查詢,是否會導致這種類型的內存警告? 或者這純粹是 Xcode 上的一個錯誤,正如另一個問題所暗示的那樣?

我在構建我的 Cocoa(OS X) 應用程序時遇到了這個警告。 但顯然它也會發生在 iOS 應用程序上。

warning: could not load any Objective-C class information. This will significantly reduce the quality of type information available

有了這個警告,Xcode 7.3.1 將我帶到了 3rd 方庫 -SwifyJSON 中的代碼行。 但我知道這與 3rd 方庫根本沒有關系,因為在發生警告之前它一直運行良好。

我有 MainViewController 和 TabViewController,它有幾個自定義視圖(當然還有控制器)

在設置第二個自定義類的實例以便在它們之間傳遞數據后,我立即遇到了警告。

在 MainVC 中,我的代碼是

private var firstTabVC = FirstTabVC
var jsonInfo:JsonInfoClass  = JsonInfoClass
private var secondTabVC = SecondTabVC // waring had occured after this was added

僅當“jsonInfo”實例行正好位於“secondTabVC”實例行上方時,Xcode 才會將我帶到第 3 方庫。 (JsonInfoClass 是使用 3rd 方庫處理 JSON 數據的自定義類)

我將有問題的代碼行移動到“firstTabVC”行下方。 然后Xcode停止抱怨“加載Objective-C類”的事情。 我只在“firstTabVC”行上收到“EXC_BAD_ACCESS”錯誤。 這就是我開始不相信 Xcode 所說的話的地方。

所以,我去了 SecondTabVC 自定義類,我看到我聲明了 MainVC.swft 的實例(我不知道我為什么這樣做),例如:

var mainVC:MainViewController = MainViewController()

在其中設置“self”(MainVC),以便我可以從 MainVC 傳遞數據,例如:

override func prepareForSegue(segue: NSStoryboardSegue, sender: AnyObject?) {
    .
    ..
    secondTabVC.mainVC = self
    ....
}

在我將 SecondTabVC.swif 中的聲明更改為

 var mainVC: MainViewController!

waring 消失了,工作正常。 我希望這可以幫助別人。

這個錯誤今天早上發生在我身上,在我遇到的錯誤消息之后:“警告:無法加載任何 Objective-C 類信息。這將顯着降低可用類型信息的質量。”

但是我的情況可能跟你的不一樣。 我創建了一個名為“ILViewController”的類,它繼承自“UIViewController”並且沒有直接擁有屬性“view”。 當我訪問“ILViewController.view”(實際上“ILViewController”沒有屬性“view”但“UIViewController”有)時,發生了這個錯誤。 所以我的建議是你應該檢查你的自定義類是否沒有擁有某些屬性但你仍然訪問它們! 祝你好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM