最初我們構建了iOS應用程序,目標是5.0+,並使用ARC來簡化內存管理。後來爲了向後兼容,我們決定支持iOS 4.3。然後,我只是iOS:未找到符號_ojbc_loadweakretained,同時切換目標到ios 4.3(圓弧)
- 安裝的iOS 4.3模擬器
- 修改應用程序的部署目標4.3
- 清潔,建設,運營
,但應用程序與下面的輸出
,意想不到的退出dyld:找不到符號:_objc_loadWeakRetained
參考文獻:/ Users/xxx/Library/Application Support/iPhone Simulator/4.3.2/Applications/16E98912-33B5-4660-A9A3-879D92735E44/myApp.app/myApp
預計位於:/ Applications/Xcode。應用/內容/開發/平臺/ iPhoneSimulator.platform /開發商/軟件開發工具包/ iPhoneSimulator4.3.sdk /系統/資源庫/框架/ Foundation.framework /基金會
我知道4.3不支持弱引用,但編譯器在編譯時從不抱怨,它在運行時崩潰。
更新:
我用微弱的關鍵字unsafe_unretained相反,應用程序反正跑了。但是,我得到了很多的警告一樣
__NSAutoreleaseNoPool():有沒有到位池自動釋放類__NSArrayM的對象0x564bd90 - 剛剛泄露「*」
是不是正常如何消除這些警告?
線程池檢查您baseSDk這將是5.0 。 – Iducool 2012-07-16 09:01:18
我的baseSDK是5.1,我應該改爲4.3嗎?我在列表中找不到4.3 sdk – fifth 2012-07-16 09:16:23