macOS Sierra 簡介
透過新的 macOS Sierra,開發人員可以利用新的 API,讓使用者以先前無法使用的方式與其應用程式和網站互動。 例如,Apple 現在允許網站讓客戶選擇透過 Apple Pay 安全地付費,並增強金屬架構的增強功能,提升應用程式的圖形和運算潛力。
如需macOS Sierra的詳細資訊,請參閱Apple的 macOS+ Apps 檔。
macOS Sierra 的新功能
Apple 已在 macOS Sierra 中新增數個新的 API 和服務,以及許多現有功能的增強功能,包括:
Apple 檔案系統
有了macOS Sierra,Apple已將新的Apple檔系統發行為適用於iOS、macOS、tvOS和 watchOS 的新式文件系統。 Apple 檔案系統已針對 Flash 和 SSD 記憶體進行優化,並提供下列功能:強式加密、寫入時複製元數據、空間共用、檔案和目錄的複製、快照集、快速目錄大小調整和不可部分完成的安全儲存基本類型。
如需詳細資訊,請參閱Apple的 Apple文件系統指南。
Apple Pay 增強功能
Apple 在 macOS Sierra 中對 Apple Pay 進行了多項增強功能,可讓使用者從網站進行安全的付款。
在macOS Sierra中,已新增數個新的API,可與macOS Sierra、iOS和 watchOS 搭配運作,以支援動態付款網路和新的沙箱測試環境。
macOS Sierra 包含新的 ApplePay Javascript 架構,可讓開發人員將 Apple Pay 直接納入 iOS 和 macOS Safari 型網站。 對於支援 Apple Pay 的網站,使用者可以使用其 i 電話 或 Apple Watch 來授權付款。
如需詳細資訊,請參閱Apple的 ApplePay JS Framework 參考。
建置現代化的 macOS 應用程式
Apple 的 Safari 網頁瀏覽器、頁面字處理器和數位散佈表等新式 macOS 應用程式會使用許多新技術來呈現統一、內容敏感的使用者介面,而傳統 UI 元素,例如浮動面板和多個開啟視窗。
我們的 建置現代化 macOS 應用程式 指南涵蓋數個秘訣、功能和技術,開發人員可用來在 Xamarin.Mac 中建置新式 macOS 應用程式。
CloudKit 數據共用
CloudKit 架構已在macOS Sierra中擴充,讓用戶能夠從其私人iCloud資料庫快速且輕鬆地共享記錄集。
CloudKit 提供完整的UI來傳送和接受共享記錄邀請,且使用者已完整控制可存取記錄的人員。
如需詳細資訊,請參閱Apple的 CloudKit Framework 參考 和 CloudKit JS Framework 參考。
重要
Apple 提供工具協助開發人員適當地處理歐盟一般資料保護規定 (GDPR)。
Safari 應用程式延伸模組支援
Safari 應用程式延伸模組可讓應用程式擴充 Safari 網頁瀏覽器的行為,同時與 macOS Sierra 緊密整合。 由於 macOS Safari 應用程式擴充功能的運作方式與 iOS Safari 應用程式延伸模組類似,因此很容易從一個系統移植到另一個系統。
如需詳細資訊,請參閱Apple的 Safari應用程式延伸模組程序設計指南。
安全性和隱私權增強功能
Apple 對 macOS Sierra 的安全性和隱私權進行了多項增強功能,可協助應用程式改善應用程式的安全性,並確保終端使用者的隱私權,包括下列各項:
- 新的
NSAllowsArbitraryLoadsInWebContent
密鑰可以新增至應用程式的Info.plist
檔案,並允許網頁正確載入,而 Apple Transport Security (ATS) 保護仍會針對應用程式的其餘部分啟用。 - Common Data Security Architecture (CDSA) API 已被取代,應該取代為 SecKey API 來產生非對稱密鑰。
- 針對所有 SSL/TLS 連線,RC4 對稱加密現在預設為停用。 此外,安全傳輸 API 不再支援 SSLv3,因此建議應用程式儘快停止使用 SHA-1 和 3DES 密碼編譯。
- 由於 iOS 10 和 macOS Sierra 中的新剪貼簿可讓使用者在裝置之間複製和貼上,因此 API 已展開,以允許剪貼簿限制為特定裝置,並在指定時間點自動清除時間戳。 此外,命名貼上板不再保存,而且應該取代為共用貼上板容器。
- 如果應用程式存取受保護的數據(例如使用者的行事曆),它 必須在 其
Info.plist
檔案中宣告意圖,其檔案中具有正確的目的字串值索引鍵(NSCalendarUsageDescription
在 Calendar 的情況下)。 - 尚未透過 Mac App Store 傳遞的開發人員簽署應用程式現在可以利用 CloudKit、iCloud Keychain、iCloud Drive、遠端推播通知、MapKit 和 VPN 權利。
- macOS Sierra 不再支援傳遞外部程式代碼或數據,以及其 zip 封存或未簽署磁碟映射中的程式代碼簽署者應用程式,因為運行時間之前不知道運行時間路徑。
此外,在 macOS Sierra 上執行的應用程式(或更新版本)必須藉由在其檔案中 Info.plist
輸入一或多個隱私權特定密鑰,以靜態方式宣告其存取特定功能或使用者資訊的意圖,以向使用者說明應用程式想要取得存取權的原因。
由於macOS Sierra會與iOS 10共用這些變更,如需詳細資訊,請參閱我們的iOS 10 安全性和隱私權增強功能 指南。
智慧卡驅動程序擴充功能支援
透過 macOS Sierra,應用程式可以建立 NSExtension
以智慧卡為基礎的智慧卡驅動程式,以允許從特定類型的智慧卡存取內容。 然後,此資訊會顯示在系統密鑰鏈內(取代已被取代的 Common Data Security Architecture 方法)。
如需詳細資訊,Pleas 請參閱 Apple 的 CryptoTokenKit 架構參考。
整合記錄
整合記錄可為應用程式提供單一 API,以在系統的所有層級之間有效率地傳訊。 透過整合記錄,應用程式可更精細地控制多個層級的記錄,包括隱私權控件和活動追蹤,以方便偵錯。
記錄會在活動追蹤和記錄一起使用時提供自動訊息相互關聯。
macOS Sierra 包含新的控制台應用程式(在應用程式/公用程式中),能夠顯示來自多個來源的記錄數據,包括連線的裝置。 它也支援標記化和儲存的搜尋,並在多個進程之間顯示相關訊息之間的連線。
此外,您可以使用命令行工具來檢視和維護記錄訊息。
如需詳細資訊,請參閱Apple的 記錄參考。
寬色域
macOS Sierra 擴充了整個系統的擴充範圍圖元格式和寬域色彩空間的支援,包括核心圖形、核心映射、金屬和 AVFoundation 等架構。 透過在整個圖形堆疊中提供此行為,可進一步簡化對全色顯示器裝置的支援。
此外, AppKit
已修改為在新的擴充 sRGB 色彩空間中運作,讓您更輕鬆地在寬色域混合色彩,而不會大幅遺失效能。
使用寬色時,Apple 提供下列最佳做法:
NSColor
現在會使用 sRGB 色彩空間,且不再將值固定到0.0
範圍1.0
。 如果應用程式依賴先前的固定行為,則必須修改macOS Sierra。- 使用核心圖形或金屬等低階 API 來提供影像處理時,應用程式應該使用支援 16 位浮點值的延伸範圍色彩空間和像素格式。 必要時,應用程式必須手動夾住色彩元件值。
- 核心圖形、核心影像和金屬效能著色器都提供可在兩個色彩空間之間轉換的新方法。
若要深入瞭解,請參閱我們的 廣色 簡介指南。
其他架構變更
除了上述的主要架構變更和新增專案之外,Apple 在 macOS Sierra 中也做了許多額外的次要架構變更。
若要深入瞭解,請參閱我們的 其他架構變更 指南。
已被取代的 API
macOS Sierra 中已被取代下列 API:
- 不再支援 HFS 標準文件系統。
如需淘汰和變更的完整清單,請參閱 Apple 的 macOS v10.12 API 差異 檔。