本页使用了标题或全文手工转换

Xcode

维基百科,自由的百科全书
跳到导航 跳到搜索
Xcode
Xcode 6 icon.png
Xcode 3.2 project window.png
運行於Mac OS X 10.6上的Xcode 3.2
開發者 蘋果公司
穩定版本
穩定版本 9.2(9C40b)(2017年12月4日,​7個月前​(2017-12-04[±]
預覽版本 8.2 Beta 2 (8C30a)(2016年12月15日,​18個月前​(2016-12-15[±]
操作系统

Mac OS X 10.3(版本1.x)
Mac OS X 10.4(版本2.x)
Mac OS X 10.5(版本2.5、3.0及3.1)
Mac OS X 10.6(版本3.2、4.0、4.1及4.2)
OS X 10.7(版本4.1、4.2、4.3、4 4、4.5及4.6)
OS X 10.8(版本4.4、4.5及4.6)
OS X 10.8.4(版本5.0及5.1) OS X 10.9(版本5.x、6.0、6.1及6.2) OS X 10.10(版本6.x、7.x)
OS X 10.11(版本7.x、8.x)

macOS 10.12(版本8.x)
类型 集成開發環境
许可协议 專有軟件
網站 Apple - Xcode

Xcode蘋果公司向開發人員提供的集成開發環境,用於開發macOSiOSWatchOStvOS的應用程序。

概述[编辑]

Xcode前身是繼承自NeXTProject Builder

The Xcode suite包含有GNU Compiler Collection自由軟體(GCC、apple-darwin9-gcc-4.0.1以及apple-darwin9-gcc-4.2.1,默認的是後者),並支援C語言C++FortranObjective-CObjective-C++JavaAppleScriptPythonRubySwift,還提供CocoaCarbon以及Java等編程模式。協力廠商更提供了GNU Pascal[1]Free Pascal[2], Ada[3], C#[4], Perl[5], Haskell[6]D語言。Xcode套件使用GDB作為其後台調試工具

從Xcode 3.1開始附帶iOS SDK,作為iOS的開發環境。

Xcode 4.0於2011 年 3 月 9 日正式發行。該版本非Apple開發者註冊會員亦能從Mac App Store中付費下載,收取US$4.99的費用。

從Xcode 4.1開始,Mac OS X v10.6Mac OS X v10.7的使用者可以從Mac App Store中免費下載。

Xcode最新的版本是Xcode 9(2017 年 WWDC發布),支持iOS 11和WatchOS 3的開發。同樣,可在Mac App Store上免費下載。

版本歷史[编辑]

Xcode 1.0 - Xcode 2.x(支援 iOS 之前)[编辑]

Xcode 3.0 - Xcode 4.x[编辑]

Xcode 5.0 - 6.x (支援 arm64 )[编辑]

Xcode 7.0 - 9.x (開放免費部署至實體裝置)[编辑]

版本歷程
版本 Build 釋出日期 可於 OS X上執行的版本 OS X SDK(s) 包括iOS SDK 包括watchOS SDK 包括tvOS SDK 可以下載的模擬器 iOS 版本

7.0

7A220 2015 年 9 月 16 日 10.10.4 OS X v10.11 (15A278) iOS 9 (13A340) watchOS 2 (13S343) - iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1

7.0.1

7A1001 2015 年 9 月 28 日

7.1

7B91b 2015 年 10 月 21 日 10.10.5 iOS 9.1 (13B137) tvOS 9.0 (13T393) iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1

7.1.1

7B1005 2015 年 11 月 9 日

7.2

7C68 2015 年 12 月 8 日 OS X v10.11.2 (15C43) iOS 9.2 (13C75) watchOS 2.1 (13S660) tvOS 9.1 (13U78) iOS 9.1 + iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 + tvOS 9.0 + watchOS 2.0

7.2.1

7C1002 2016 年 2 月 3 日 tvOS 9.1 (13U79)

7.3

7D175 2016 年 3 月 21 日 10.11 OS X v10.11.4 (15E60) iOS 9.3 (13E230) watchOS 2.2 (13V143) tvOS 9.2 (13Y227) iOS 9.2 + iOS 9.1 + iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 + tvOS 9.1 + tvOS 9.0 + watchOS 2.1 + watchOS 2.0

7.3.1

7D1012[40] 7D1014[41] 2016 年 5 月 3 日

8.0

8A218a 2016 年 9 月 13 日 10.11.5 macOS Sierra 10.12 (16A300) iOS 10 (14A345) watchOS 3 (14S326) tvOS 10.0 (14T328) iOS 9.3 + iOS 9.2 + iOS 9.1 + iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 + tvOS 9.2 + + tvOS 9.1 + tvOS 9.0 + watchOS 2.2 + watchOS 2.1 + watchOS 2.0

8.1

8B62 2016 年 10 月 27 日 macOS Sierra 10.12.1 (16B2649) iOS 10.1 (14B72) watchOS 3.1 (14S471a) iOS 10.0 + iOS 9.3 + iOS 9.2 + iOS 9.1 + iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 + tvOS 9.2 + tvOS 9.1 + tvOS 9.0 + watchOS 2.2 + watchOS 2.1 + watchOS 2.0

8.2

8C38 2016 年 12 月 12 日 macOS Sierra 10.12.2 (16C58) iOS 10.2 (14C89) tvOS 10.1 (14U591) iOS 10.1 + iOS 10.0 + iOS 9.3 + iOS 9.2 + iOS 9.1 + iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 + tvOS 10.0 + tvOS 9.2 + tvOS 9.1 + tvOS 9.0 + watchOS 2.2 + watchOS 2.1 + watchOS 2.0

8.2.1

8C1002 2016 年 12 月 19 日

8.3

8E162 2017 年 3 月 27 日 10.12 10.12.4 (16E185) iOS 10.3 (14E269) watchOS 3.2 (14V243) tvOS 10.2 (14W260) 新增 iOS 10.2 + tvOS 10.1 (並沒有提供 watchOS 3.1)

8.3.1

8E1000a 2017 年 4 月 6 日

8.3.2

8E2002 2017 年 4 月 18 日

8.3.3

8E3004b 2017 年 6 月 5 日 iOS 10.3.1 (14E8301) 新增 watchOS 3.1 Simulator

9.0

9A235 2017 年 9 月 19 日 10.12.6 10.13 (17A360) iOS 11.0 (15A372) watchOS 4.0 (15R372) tvOS 11.0 (15J380) 新增 iOS 10.3.1 + tvOS 10.2 + watchOS 3.2

9.0.1

9A1004

9.1

9B55 2017 年 10 月 31 日 10.13.1 (17B48) iOS 11.1 (15B93/15B101) watchOS 4.1 (15R846) tvOS 11.1 (15J582) 新增 iOS 11.0 + tvOS 11 + watchOS 4.0

9.2

9C40b 2017 年 12 月 4 日 10.13.2 (17C76) iOS 11.2 (15C107) watchOS 4.2 (15S100) tvOS 11.2 (15K104) 新增 iOS 11.1 + tvOS 11.1 + watchOS 4.1

9.3

9E145 2018 年 3 月 29 日 10.13.2 10.13.4 (17E189) iOS 11.3 (15E217) watchOS 4.3 (15T212) tvOS 11.3 (15L211) 新增 iOS 11.2 + tvOS 11.2 + watchOS 4.2

9.4 beta

9Q1004a 2018 年 4 月 2 日 10.13.2 10.13.4 (17E189) iOS 11.4 (15F5037c) watchOS 4.3 (15T212) tvOS 11.4 (15F5037c) 新增 iOS 11.3 (不支援 tvOS 11.3)
版本 Build 釋出日期 可於 OS X上執行的版本[42] OS X SDK(s)[43] 包括iOS SDK[44] 包括watchOS SDK[45] 包括tvOS SDK[46] 可以下載的模擬器 iOS 版本[47]
已停產 目前版本 Beta測試版本

事故[编辑]

XcodeGhost[编辑]

在2015 年 9 月 18 日,有人發佈消息稱發現由某第三方提供的Xcode(即XcodeGhost)包含惡意後門,會使其編譯的程序被注入相應的後門用於收集相關使用信息,多個中國大陸發佈的軟件被該編譯器感染。[48][49]有人推測傳染方式可能是其作者通過多種社交途徑推廣其發佈的第三方Xcode;[49]也有人分析通過污染迅雷的離線下載服務使其緩存了染毒版本文件,使只要通過迅雷下載,即使是從官方途徑下載也會因為迅雷的CDN機制而染毒。[50]

之後所感染的軟件開發者和其他蘋果應用開發者相繼排查並重新發佈無污染版本。迅雷表示其CDN系統的緩存文件無被污染。[50]其事件作者也發表聲明稱此次為一次錯誤的實驗。[51][52]

根據史諾登(Edward Snowden)揭露文件,美國中情局(CIA)在2012 年 已有類似攻擊手法,即可以透過偽冒Xcode,用來監控所有使用該偽冒開發工具所開發的App及後續的修改版本,而這套偽冒開發工具所開發的App,可以在蘋果公司的官方App Store上架並販售,且不會被任何人員發覺有異常之處。[53]

參考文獻[编辑]

  1. ^ GNU Pascal and Xcode
  2. ^ Using Free Pascal with Xcode
  3. ^ Tools 互联网档案馆存檔,存档日期2008-12-05.
  4. ^ CSharpPlugin - cocoa-sharp-dev - Google Code
  5. ^ CamelBones, an Objective-C/Perl bridge for Mac OS X & GNUStep - Home
  6. ^ Haskell Xcode Plugin 互联网档案馆存檔,存档日期2008-07-23.
  7. ^ 7.0 7.1 iPhone Software Development: Old versions of iPhone SDK. [May 2, 2015]. 
  8. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  9. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  10. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  11. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  12. ^ Old versions of iPhone SDK. There were several releases of Xcode 3.2.3: with iOS 4.0; with iOS 4.0.1; with iOS 4.0.2 SDK 
  13. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  14. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  15. ^ Xcode. [May 2, 2015]. (原始内容存档于2011 年 7 月 30 日). 
  16. ^ Unauthorized - Apple Developer (PDF). [2015-05-02]. 
  17. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  18. ^ Mac App Store - Xcode. [2015-05-02]. (原始内容存档于2011-09-24). 
  19. ^ How to Install Older iOS Simulators in XCode 4.2.1 (SDK5.0). [2015-05-02]. 
  20. ^ iphone - Xcode 4.2.1 for Snow Leopard - Stack Overflow. [2015-05-02]. 
  21. ^ Mac App Store - Xcode. [2015-05-02]. (原始内容存档于2012-02-02). 
  22. ^ Mac App Store - Xcode. [2015-05-02]. (原始内容存档于2012-02-18). 
  23. ^ Mac App Store - Xcode. Mac App Store. [2015-05-02]. (原始内容存档于2012-07-01). 
  24. ^ iphone - Install Simulator SDK 4.3 to Xcode 4.4 on Mountain Lion - Stack Overflow. [May 2, 2015]. 
  25. ^ Unauthorized - Apple Developer (PDF). [May 2, 2015]. 
  26. ^ Mac App Store - Xcode. Mac App Store. [May 2, 2015]. (原始内容存档于2013 年 7 月 25 日). 
  27. ^ Unauthorized - Apple Developer (PDF). [2015-05-02]. 
  28. ^ Mac App Store - Xcode. Mac App Store. [May 2, 2015]. (原始内容存档于2013 年 10 月 10 日). 
  29. ^ Mac App Store - Xcode. Mac App Store. [May 2, 2015]. (原始内容存档于2014 年 5 月 30 日). 
  30. ^ Xcode 5 and iOS 7: Architecture and Valid architectures. 
  31. ^ ios5 - Use iOS 5 Simulator in XCode 5? - Stack Overflow. [May 2, 2015]. 
  32. ^ About 64-Bit Cocoa Touch Apps. 
  33. ^ Install ios 5 simulator to xcode 5.1?. [May 2, 2015]. 
  34. ^ iphone - ios 6.0 Simulator in xcode 5.1 - Stack Overflow. [May 2, 2015]. 
  35. ^ ios - Xcode 6 Standard architectures exclude armv7s - Stack Overflow. [May 2, 2015]. 
  36. ^ xcode - iOS 6.1 simulator on OSX 10.10 Yosemite - Stack Overflow. [May 2, 2015]. 
  37. ^ Developer Portal version
  38. ^ MAS version
  39. ^ LSMinimumSystemVersion from Info.plist
  40. ^ Developer Portal version
  41. ^ MAS version
  42. ^ plutil -p Xcode.app/Contents/Info.plist | grep LSMinimumSystemVersion
  43. ^ cd Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/; plutil -p */System/Library/CoreServices/SystemVersion.plist
  44. ^ ls Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ | grep '(.*)'
  45. ^ ls Xcode.app/Contents/Developer/Platforms/WatchOS.platform/DeviceSupport/ | grep '(.*)'
  46. ^ ls Xcode.app/Contents/Developer/Platforms/AppleTVOS.platform/DeviceSupport/ | grep '(.*)'
  47. ^ from preferences -> downloads
  48. ^ iOS開發工具Xcode遭惡意代碼插入 網易雲音樂等APP被感染. 網易數碼. 2015-09-18. (原始内容存档于2015-09-25). 
  49. ^ 49.0 49.1 關於Xcode自帶病毒事件你必須要知道的7件事. 網易數碼. 2015-09-18. 
  50. ^ 50.0 50.1 驅動之家. 迅雷:離線服務器並未受問題Xcode版本影響-搜狐科技. 搜狐. 2015-09-19. 
  51. ^ 冰冰. XcodeGhost作者現身澄清:只是一次錯誤的實驗. 驅動之家. 2015-09-19. 
  52. ^ XcodeGhost作者凌晨現身微博並公開源碼 稱只是實驗項目. 網易數碼. 2015-09-19. 
  53. ^ 黃彥棻. XcodeGhost風暴事件大剖析. 電週文化事業. 2015-10-13. 

外部連結[编辑]