2017-10-18 179 views
0

我目前有XCode版本8.2.1。如何判斷我的XCode將部署到哪個iOS版本?

在我的iPhone上,我目前有iOS 10.3.2。

我的XCode的版本將不會部署到任何超過iOS的10.2。

在我的iPhone,我被提供了一個升級到iOS 11.0.3。

根據這個wiki這裏的XCode版本9將部署到iOS 11.0:https://en.wikipedia.org/wiki/Xcode#9.x_series。但我不能說這是否包含所有的子版本,例如11.0.3。

所以我的問題是,如果我得到的XCode 9版和升級我的手機到iOS 11.0.3,我將能夠在Xcode部署到我的手機?我如何確切知道每個版本的XCode支持哪些版本的iOS?接下來,我如何確保我的iPhone和iPad始終具有可從XCode部署的iOS版本?

+0

您可以在Xcode中查看您項目的部署目標是什麼。你真的有什麼問題? – matt

回答

0

如果我獲得XCode版本9並將我的手機升級到iOS 11.0.3,我能否從XCode部署到我的手機?

是的。 Xcode 9和iOS 11都是最新的(截至2017年10月)版本。如果您想要支持iOS 11,則需要Xcode 9.

如何確切確切地說明每個版本的XCode支持哪些版本的iOS?

檢查release notes。例如,的Xcode 9兼容性節說:

的Xcode 9包括軟件開發工具包適用於iOS 11,watchOS 4,MACOS 10.13和tvOS 11

,還是今後,我怎麼能保證我的iPhone和iPad總是有我可以從XCode部署的iOS版本?

與最新的iOS和Xcode版本保持同步是實現這一目標的一種方式。你甚至不需要手機上最新的iOS版本 - 只要你使用的是任何Xcode支持的最低版本以後的版本。查看可用部署目標列表,我可以看到Xcode 9將iOS版本部署回iOS 9.1。

大部分情況下,請注意,在手機上更新iOS可能需要您更新Xcode。

+0

謝謝,這真的很有幫助。還有一個問題:如果XCode的一個版本支持「iOS 11」,那麼這是否意味着它總是支持子版本(例如11.0.3),即使那些尚未發佈的版本(例如11.0.4)? – ClareSudbery

+0

@ClareSudbery我想這取決於你的意思是「支持」。您使用Xcode 9.0構建的應用程序可能在iOS 11.0.x上運行良好,但Xcode 9.0可能無法讓您在模擬器上運行iOS 11.0.x,並且Xcode 9.0可能會或可能無法運行將應用部署到運行iOS 11.0.x的設備上。 – Caleb

2

是的,您將能夠部署到您的手機。

當您需要的Xcode 9而不是8對iOS11程序,這個問題更多的是與你的項目的基本SDK和部署目標設置。

Base SDK是您正在編譯的SDK版本。例如,在Xcode 9中,這可能是iOS11。部署目標設置代表應用程序將運行的最低支持iOS版本。根據你的例子,這可能是iOS10,但它可能是其他任何東西。

要使用最新的iOS11功能,你得有iOS11的最低基數SDK。要支持較老的平臺,您必須確保將部署目標設置爲您所支持的最舊版本。在代碼中,當決定使用比部署目標更新的功能時,您需要檢查平臺的版本。

+0

沒錯。並且真正重要的一點是:任何版本的Xcode都可以部署到**之前的任何版本的**(以及許多在收集符號後發佈它的iOS版本)。您只需聲明您的代碼支持哪些版本的iOS。 – Tommy

+0

這是一個很好的答案,謝謝 - 遺憾的是我不能用滴答作出答案,所以我選擇了其他答案,因爲它回答了我的基本問題,但由於有關部署目標的詳細信息,這也很有用。 – ClareSudbery

相關問題