Xcode 升級後,經常遇到的遇到的警告、錯誤,解決方法從sdk3.2.5升級到sdk 7.1中間廢棄了不少的方法,還有一些邏輯關係更加嚴謹了。1,警告:「xoxoxoxo」 is deprecated 解決辦法:查看xoxoxoxo的這個方法的文檔,替換掉這個方法便可。 2,警告:Declaration of "struct sockaddr" will not be visible outside of this function 解決辦法:在你的開源.m文件中添加 #import <netinet/in.h> 3,警告:Implicit conversion from enumeration type 'UIInterfaceOrientation' to different enumeration type 'UIDeviceOrientation' 解決辦法:類型不匹配。跳到出錯的那一行,UIInterfaceOrientation強制轉換爲UIDeviceOrientation就好了。 4,警告:incompatible pointer types assigning to 'MyArrayList*'from 'NSMutableArray' 解決辦法:加入強制轉換(MyArrayList*) 5,警告:'&&' within '||' 問題出處: if (exists && !isDirectory || !exists)……… 解決辦法: if ((exists && !isDirectory) || !exists)……… 6,警告:Warning:The Copy Bundle Resources build phase contains this target's Info.plist file 解決辦法:將Info.plist文件移到Resources目錄下,而不要直接放在target下。 7,警告:在使用ASIHttp…第三方庫的,運行報錯。 解決辦法:看你的項目中是否添加CFNetwork.framework、SystemConfiguration.framework, MobileCoreServices.framework, CoreGraphics.framework和libz.1.2.3.dylib,若是是sdk5.0以上,改添加libz.1.2.5.dylib 8,警告:xxxooo,missing required architecture i386 in file 解決辦法:若是是錯誤信息的話:Target->Build Settings->Search Paths, 刪除FrameworkSearch Paths 裏面內容就能夠了。 要只是一個警告的話,真機調試能夠過。具體解決方法待大神出現。 9,警告: clang: error: no such file or directory: '/demo2/控件代碼/13/Recorder/Recorder_Prefix.pch' clang: error: no input files Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang failed with exit code 1 解決辦法: 在你的主工程文件 target搜素,pch ,找到Prefix Header 把它後面的值,都刪除,再運行就解決了。 10,警告: 「ARC forbids synthesizing a property of an Objective-C object with unspecified ownership or storage attribute 解決辦法:若是定義了ARC有效,那麼必需要有全部者屬性的定義;因此代碼改爲下面這樣 @property (nonatomic, strong, readonly) NSString *ss; 11,警告: io6一下的xib系統均沒有自動選擇Use Autolayout, Supporting iOS 5 and below with xib of iOS 6 解決辦法:Just un-select 「Use Autolayout」 in the file inspector of the xib’s view and we are back to the familiar autosizing in size inspector and boom, it supports iOS 5 and below. 12,警告: Warning: Multiple build commands for output file xxx.png 解決辦法:找到項目裏xxx.png重複,刪除重複的資源。 //如下是升級到 xcode 5.0.1 以後使用遇到的警告 13,警告: 「iOS 模擬器」未能安裝此應用程序。 解決辦法:刪除模擬器上當前要運行那個APP,從新運行項目。就ok 14,警告: SpringBoard沒法啓動應用程序 錯誤:-3 解決辦法:退出模擬器,從新運行這個項目。 15,警告: The server certificate failed to verify. 解決辦法: 一、打開終端(實用工具 -->終端),在終端中輸入以下命令: svn ls https://192.100.1.11?0/svn/xxxxxx(注意下面的url更換成你本身的url地址)而後直接輸入 「 p 」 確認,就能夠從新鏈接了。16,警告:Bitmasking for introspection of Objective-C object pointers is strongly discouraged. 解決辦法:某數字& 0x1的時候是表明要取最低位是否爲1,改爲了 if(JK_EXPECT_F(((NSUInteger)object)%2))便可。17,警告:Implicit conversion loses integer precision: 'unsigned long' to 'CC_LONG' (aka 'unsigned int'). 解決辦法: CC_MD5(str,strlen(str), r);,改爲了 CC_MD5(str, (CC_LONG)strlen(str), r);便可。18,警告:error: failed to launch '/private/var/mobile/Applications/xxxxx' -- failed to get the task for process 11140. 解決辦法: 重啓你的開發手機便可,還有一種多是你的開發者證書與發佈證書搞錯了,檢查在xcode中證書是否一直 。19,警告:error: ignoring filxxxxxx/libBaiduMobStat.a, missing required architecture x86_64 in filexxxx/libBaiduMobStat.a 解決辦法: targets ->build setting 下的 architectures 設置爲 standard architetures(armv7,armv7s) vaild architectures 設置爲armv7,armv7s。20,警告:error: Directory not found for option '-L/Users/joryoubonxx/BaiduStatistic 解決辦法: 刪除 targets ->build setting 下的 library search path不正確的地址,若是還不行,從新添加第三庫、clean ,重啓Xcode.便可。遇到相關的警告,通常編譯器都會提供解決方案,因此,做爲新手,咱們應該看懂編譯器給咱們的提示,這樣咱們解決問題就會事半功倍。 |