我已經編寫了專門用於iOS7的應用程序,現在正試圖使其適用於iOS6。XCode設置,以查看哪些代碼在以前的操作系統版本中不起作用
我真的很喜歡一個設置來啓用警告,其中突出顯示的代碼行不會在iOS6上工作。即任何只能在iOS7上運行的代碼的調用。
通過這種方式,我可以在調試過程中捕獲它們之前立即識別需要注意的任何代碼行。
這是否存在?
我已經編寫了專門用於iOS7的應用程序,現在正試圖使其適用於iOS6。XCode設置,以查看哪些代碼在以前的操作系統版本中不起作用
我真的很喜歡一個設置來啓用警告,其中突出顯示的代碼行不會在iOS6上工作。即任何只能在iOS7上運行的代碼的調用。
通過這種方式,我可以在調試過程中捕獲它們之前立即識別需要注意的任何代碼行。
這是否存在?
有兩種方法可以解決這個問題。
如果使用舊的Xcode旁邊最新的,不是用這個片段:
if ([self respondsToSelector:@selector(newSelector)]){
#if __IPHONE_7_0
[self newSelector];
#endif
} else {
[self oldSelector];
}
MJGAvailability FTW!謝謝Tuss! – theDuncs
沒有得到一個警告出現和方式即使有會怎麼IDE
現在你會做什麼來處理它像下面
if([myObject respondsToSelect:@selector(myiOS7SelectorOnly)]) {
[myObject myiOS7SelectorOnly];
}
它的工作原理其他方式,如果你在爲iOS7開發應用程序時,您使用了不推薦使用的方法,但iOS7 API不再使用,它會給您一個警告,但不會以其他方式,您將不得不等待它轉身併發生崩潰並拋出異常。
在某些時候,我安裝了2個Xcode - Xcode 4和Xcode 5. Xcode 4沒有針對ios7的API,它顯示了所有的不兼容性。 但是我不知道你現在可以在哪裏找到XCode4,它會不會在ios7代碼中顯示錯誤? 至少你可以試試這種方式。
我不認爲這是可能的。唯一的方法是在iOS6下運行你的應用程序,徹底調試並尋找崩潰。 – GuybrushThreepwood
謝謝@Ohnomycoco。 – theDuncs
嘗試將部署目標設置爲iOS 6 – Volker