1. 程式人生 > >iOS開發之一些錯誤集錦

iOS開發之一些錯誤集錦

######No1. NSAutoreleasePool’ is unavailable: not available in automatic reference counting mode 答:根據Objective-C 2.0程式設計上的舊版本的程式碼會發生NSAutoreleasePool’ is unavailable: not available in automatic reference counting mode的錯誤 需要手動關閉工程中ARC 工程中 Build Settings—>Apple LLVM compiler 3.0 - Language—>Objective-C Automatic Reference Counting 把YES改為NO就可以了 然後就可以編譯通過了

######No2. 5 duplicate symbols for architecture x86_64 clang: error: linker command failed with exit code 1 圖片來自網路 這個例子意思是引用了重複的檔案,接下來你要到 Build Phases --> Compile Sources --> Filter -->搜尋你報錯的controller或者其他 螢幕快照 2016-11-24 上午10.23.45.png 搜尋那個報錯的提示的地方(Controller,View 等),如果有兩個刪除它,刪除之後不要著急,先執行一下,如果執行之後又新報了兩個錯誤,你再在這個地方搜尋一下,看看刪除的那個存不存在,如果不存在,就再新增一下,再執行就沒問題啦

######NO3. Undefined symbols for architecture x86_64: “OBJC_CLASS$_DHServiceWorkingHandler”, referenced from: objc-class-ref in DHLoginViewModel.o 這是我工程裡的報錯 這個問題其實是因為沒匯入DHServiceWorkingHandler這個檔案 TARGETS --> Build Phases --> Compile Sources --> 點選+ 新增就可以了

還有一種可能就是少加了一個靜態庫,如果報錯的都屬於同一個檔案,那就把它對應的總的加進去 螢幕快照 2017-03-14 10.31.44.png

######No4. 同步程式碼出現:“couldn’t load project” 在這個工程當前目錄下

  1. 找到 xxxx.xcodeproj
  2. 顯示包內容
  3. 開啟project.pbxproj
  4. 搜尋這個檔案裡的 ====
  5. 解決衝突重新執行就可以了

######No5. “OBJC_CLASS$xxxxxx”, referenced from: objc-class-ref in xxxx. 2154BB15-7568-40BE-981D-EF4EBF6D0086.png Target Members 如果沒有連線,就連線上,然後再編譯

######No6. textField不能輸入的問題 1.如果是加在圖片上的話開啟圖片的互動 2設定[textfield becomeFirstResponse]

######No7. 錯誤:7 duplicate symbols for architecture x86_64 檢視工程中是否有重複檔案

######No.8 Failed to chmod /Users/peiyunchen/Library/Developer/CoreSimulator/Devices/F8EEA6D0-0CE4-4F38-A1AC-D0B5A8F309E2/data/Library/Caches/com.apple.containermanagerd/Bundle/Application/C315833E-E912-4223-BB30-F052647E6D96/DHProject_IPad.app/DHProject_IPad : No such file or directory 重啟一下模擬器或者xcode試一下就好了

####### (os/kern) invalid capability (20)

螢幕快照 2017-03-16 10.20.09.png

ld: embedded dylibs/frameworks are only supported on iOS 8.0 and later (@rpath/Hyphenate.framework/Hyphenate) for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 檔案中有c或者c++的檔案,選中當前c/c++的檔案,改成object-c source

螢幕快照 2017-03-24 14.28.13.png

######## Reason: image not found XXXX(這個是我手動匯入環信出現的問題) 把在黃箭頭匯入的同樣也匯入到紅箭頭的地方就好了 D04CD9A1-74D7-4A83-B673-2CD7E1A2CA1F.png