2016-08-16 47 views
1

我們已經在支持iOS 7設備的目標c應用中使用了很多次這個代碼。swift的基礎API可用性問題

NSArray* paths = NSSearchPathForDirectoriesInDomains(searchPath, NSUserDomainMask, YES); 
NSString* documentsDirectory = [paths firstObject]; 

而在我們的目標C應用程序,本細則顯示,這個API是可用的,因爲iOS的2.0

enter image description here

我們從頭移植我們的項目斯威夫特有相同的API可用因爲iOS的8

enter image description here

我創建了一個新的快速的測試項目,將支持IO S 7並使用這個API,它的工作。 現在我很困惑,爲什麼在Swift項目中,Api是從iOS 8.0開始可用的,但仍然在iOS 7.0上運行。可能是文件錯誤。但這是我們一直在檢查可用性的方式。如果這不可信,則需要花費很多時間通過其他來源驗證API可用性。

回答

0

Swift是在iOS 8中引入的,所以默認情況下,Cocoa Touch Framework中任何Swift類的可用性都是iOS 8或更高版本。

要查看函數或類的真實可用性,請檢查聯機文檔。如看到hereNSSearchPathForDirectoriesInDomains的真實可用性來自iOS 2並且仍然可用。

相關:What is the availability of NSNotFound?