2010-09-14 103 views
2

我剛剛更新xcode到版本4.0。我的應用程序中的很多框架現在都以紅色突出顯示,它們似乎不見了。即MapKit.framework缺少框架iOS 4.0

4.0是不是向後兼容3.1.3?

問候, 斯蒂芬

回答

1

如果您的項目正在與3.1.3好,然後執行以下操作:1. 在Xcode左側窗格中,選擇項目名稱,點擊右鍵(控制單擊),然後選擇「獲取信息」。 2.在Build選項卡中,將Base SDK更改爲iPhone Device 4.0(您最新下載的SDK) 3.同樣,在選擇「Project」菜單 - > Edit active target後重覆上述步驟。

然後關閉您的XCode並重新啓動XCode。 您的所有框架現在都可用。

0

但是,這種改變(本身)會阻止你的應用程序加載到3.1.x設備上。這是因爲新設置「iOS部署目標」(與4.x SDK一起引入)將默認爲與您剛設置的基本SDK相同的值。您必須將此新設置(位於「部署」組中)更改爲您的應用將支持的最早的iOS設備。

現在,您的應用程序將運行在運行該版本或更高版本iOS的任何設備上。但有一個新的皺紋。如果將代碼添加到使用4.x中引入的類或方法的項目中,則在Simulator中不會有任何警告,但在3.x設備調用時會崩潰。您必須使用測試設備運行時版本的代碼來打包這些調用,並且只在運行時版本支持這些調用時才進行調用。

這裏全部詳細討論:Install xCode 3.2.3 w/ iPhone SDK 4, get "Base SDK missing", can't see other SDKs,其中包含關於如何最好地對這些運行時檢查進行編碼的討論的鏈接。