簡體   English   中英

在為多個版本進行編譯時,如何包含對僅在一個操作系統版本中存在的方法的調用?

[英]How do I include calls to methods only present in one operating system version when compiling for multiple versions?

我有一個使用最低系統要求Tiger(OS X 10.4)編譯的應用程序,但是如果該應用程序在Leopard(OS X 10.5)上執行,則需要包含一些代碼來處理Spaces。

我該怎么做呢?

(我需要撥打-[NSWindow setCollectionBehavior:] )。

  1. 將您的基本SDK(針對要構建的目標的所有配置)設置為包含調用的OS版本。
  2. 將部署版本設置為要在其上啟動代碼的最早的OS。
  3. 對於操作系統早期版本中不存在的所有調用,您必須在調用之前進行測試,方法是使用responsToSelector :(對於方法)或針對nil(對於函數和靜態函數)進行測試。 您可以根據需要檢查操作系統的版本,但是檢查特定呼叫更為可靠。

跨開發編程指南》詳細介紹了這些技術。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM