2015-10-20 57 views
1

我有一個常見問題,因爲我發現許多框架在iOS 9中已被棄用。考慮使用最新的Xcode和iOS SDK爲iOS 7和更高版本開發。我將使用在iOS 9中棄用的UIAlertView,並替換爲UIAlertController。在我的代碼中,當我想要顯示警報時,是否需要檢查iOS版本並提供一個代碼塊,使用UIAlertView(適用於iOS之前的iOS),另一個代碼塊適用於iOS 9或更高版本的UIAlertControllerAddressBookAddressBookUI框架也被替換爲ContactsContactsUI框架。使用已棄用的框架進行開發

我知道許多棄用的框架仍然可以在新的iOS SDK下正常工作,但將來有時會有不能正常工作的機會。 這將是一個很好的方法在這個問題上?

回答

2

首先,UIAlertView在IOS 8已被廢棄,不的iOS 9.

已過時並不意味着除去。這意味着過時。

只要在您的部署目標中不推薦使用API​​,應該可以安全使用。實際上停止工作的API已經很少見了。

和其他所有東西一樣,測試以確保在您的應用支持的每個iOS版本上都能正常工作。

當你在一些未來您的應用程序的更新下降爲iOS 7的支持,您可以用UIAlertController用途替代的UIAlertView所有用途。

與AddressBook類似。繼續使用它,直到您的部署目標變爲iOS 9,然後您可以遷移到使用新的聯繫人框架。

當然,如果新的API提供了您希望在支持的設備上使用的功能,請隨時這樣做。只要確保您不嘗試在iOS版本較舊的設備上使用較新的API。

記住這一點。有七年前在iOS 2.0中編寫的應用程序。許多這些應用程序仍然在iOS 9下工作。

1

首先檢查iOS版本是一個好方法。此外,您可以使用respondsToSelector方法來檢查(新)正在運行的設備是否支持新方法。