What's New in iOS 11

iOS 11.0

本文總結(jié)了iOS 11中推出的主要開發(fā)者相關(guān)功能,該功能在當(dāng)前運(yùn)行的iOS設(shè)備上運(yùn)行。該文章還列出了更詳細(xì)描述新功能的文檔。

有關(guān)已知問題的最新新聞和信息,請(qǐng)參見https://developer.apple.com/ios/download上的發(fā)行說明。

有關(guān)新API的完整列表,請(qǐng)從API參考文檔的任何頁面頂部的下拉列表中選擇顯示API更改。

要了解Swift的新功能,請(qǐng)參閱Swift語言和Swift編程語言(Swift 4)。

綜述

iOS 11.0中的新功能 - 支持二進(jìn)制(非文本)條形碼。

為AV Foundation,Core Image和SiriKit添加了API,以支持檢測,解碼和創(chuàng)建具有二進(jìn)制內(nèi)容的條形碼。添加了CIBarcodeDescriptor,一個(gè)新的條形碼描述符對(duì)象到Core Image,以提供與AV Foundation和Vision API的互操作性。

應(yīng)用框架

iOS 11.0中的新功能 - 支持拖放功能。

在iOS中拖放可讓用戶將項(xiàng)目從一個(gè)位置拖動(dòng)到另一個(gè)位置;在單個(gè)應(yīng)用程序或不同的應(yīng)用程序中。功能增加,將視圖識(shí)別為拖動(dòng)源和目的地。添加了可定制的預(yù)覽和定制動(dòng)畫。有關(guān)詳細(xì)信息,請(qǐng)參閱文檔中的拖放。

iOS 11.0中新增 - 瀏覽本地和iCloud文檔。

添加了視圖控制器,用于瀏覽存儲(chǔ)在本地和云中的文檔。有關(guān)更多信息,請(qǐng)參閱UIDocumentBrowserViewController和UIDocumentBrowserTransitionController。添加了UIDocumentBrowserAction,該對(duì)象用于為文檔瀏覽器創(chuàng)建自定義操作。添加了FileProvider和FileProviderUI框架,用于添加第三方存儲(chǔ)服務(wù)。有關(guān)詳細(xì)信息,請(qǐng)參閱將文檔瀏覽器添加到應(yīng)用程序。

改進(jìn)的動(dòng)態(tài)類型支持。

添加了UIFontMetrics,一個(gè)用于創(chuàng)建根據(jù)當(dāng)前選定的文本大小進(jìn)行縮放的自定義字體的對(duì)象。更新自動(dòng)布局,以便在基準(zhǔn)錨點(diǎn)是使用系統(tǒng)間距的約束的一部分時(shí),根據(jù)字體大小動(dòng)態(tài)調(diào)整間距。添加了一個(gè)屬性來保存PDF資源的矢量數(shù)據(jù),以實(shí)現(xiàn)平滑縮放。這可以用于顯示較大版本的條形條和分段控制項(xiàng),以及調(diào)整圖像大小以匹配用戶的文字大小。在資產(chǎn)目錄中,為PDF選擇“保留矢量數(shù)據(jù)”以啟用縮放。添加了UIAccessibilityContentSizeCategoryImageAdjusting,一種用于縮放可訪問性文本大小的圖像的協(xié)議。

改進(jìn)了動(dòng)態(tài)類型的自動(dòng)布局支持。

更新了NSLayoutXAxisAnchor和NSLayoutYAxisAnchor,以提供使用兩個(gè)錨之間的系統(tǒng)間距創(chuàng)建約束的工廠方法。以前,創(chuàng)建這樣的約束的唯一方法是使用Visual Format語言中的破折號(hào)( - )。為NSLayoutFormatOptions添加了一個(gè)選項(xiàng),用于創(chuàng)建使用基線到基線間距的Visual Format語言字符串。更新UIStackView以啟用系統(tǒng)間距和自定義間距。

更新的文本內(nèi)容可與“應(yīng)用程序密碼”自動(dòng)填充一起使用。添加了UITextContentType的用戶名和密碼屬性。

對(duì)鍵盤擴(kuò)展的更新。

添加了selectedText,UITextDocumentProxy的屬性返回文檔中當(dāng)前選定的文本。添加了documentIdentifier,它是UITextDocumentProxy的一個(gè)屬性,用于指定用戶是否導(dǎo)航到新的文本小部件。添加了hasFullAccess,用于檢查鍵盤權(quán)限的UIInputViewController的屬性。添加了needsInputModeSwitchKey,UIInputViewController的屬性來控制輸入模式切換鍵的顯示。在“設(shè)置”中添加新的系統(tǒng)權(quán)限,以便應(yīng)用程序訪問包括鍵盤擴(kuò)展

改進(jìn)的可用存儲(chǔ)空間API。

為不同的使用場景添加了新的URL到URL。volumeAvailableCapacityForImportantUsageKey返回用戶明確請(qǐng)求的操作的總可用字節(jié)數(shù),或?qū)?yīng)用程序正常運(yùn)行至關(guān)重要。volumeAvailableCapacityForOpportunisticUsageKey返回可用于存儲(chǔ)非必要項(xiàng)目的總字節(jié)數(shù),例如預(yù)先下載的用于用戶可能使用或可能不會(huì)使用的性能的內(nèi)容。

圖形和游戲

iOS 11.0中新增 - 支持增強(qiáng)現(xiàn)實(shí)。

添加了ARKit框架,結(jié)合了設(shè)備運(yùn)動(dòng)跟蹤,攝像頭場景捕獲,高級(jí)場景處理和顯示便利,簡化了建立AR體驗(yàn)的任務(wù)。

iOS 11.0中的新功能 - 高性能圖像分析。

添加了用于檢測面部,條形碼,文本,圖像水平和矩形區(qū)域的Vision框架。與Core ML集成以在圖像上運(yùn)行自定義模型。跟蹤視頻中的對(duì)象。包括對(duì)圖像注冊(cè)的支持。

新的iOS 11.0 - 為Core Image編寫自定義圖像混合內(nèi)核。

添加了CIBlendKernel,一種特殊類型的CIColorKernel來混合兩個(gè)圖像(由CIRenderDestination和CIImageAccumulator支持)。將init(functionName:fromMetalLibraryData :)添加到CIKernel中,用于使用Metal編寫內(nèi)核,以受益于現(xiàn)代語言功能和減少的編譯時(shí)間。

iOS 11.0中的新功能 - 輕量級(jí)渲染目標(biāo)。

添加了CIRenderDestination,一個(gè)創(chuàng)建渲染器的對(duì)象,在渲染工作后返回給調(diào)用者。功能包括為不同目的地指定渲染器的所有目標(biāo)屬性,包括IOSurface,CVPixelBuffer,GL紋理,金屬紋理和內(nèi)存。

擴(kuò)展ReplayKit框架。

更新RPScreenRecorder進(jìn)行屏幕捕獲和后置攝像頭支持。

添加了新的Core Image過濾器CITextImageGenerator,CIColorCurves,CILabDeltaE,CIBokehBlur,CIMinMaxRed和CIBicubicScaleTransform。

Metal 2

Metal 2包含Metal,Metal Shading Language和Metal Performance Shaders框架的重要補(bǔ)充和更新。以下項(xiàng)目表示更新發(fā)生的位置:

- MTL: Metal框架中的更新。

- MSL: Metal著色語言中的更新。

- MPS: Metal 性能著色器框架中的更新。

MPS: Metal 2 新 - 跨平臺(tái) Metal 性能著色器支持。

所有的Metal Performance Shaders功能都可以在iOS 11.0,tvOS 11.0和macOS 10.13中使用。

MPS:iOS 11.0新增 - 神經(jīng)網(wǎng)絡(luò)支持。

增加了對(duì)金屬性能著色器框架的神經(jīng)網(wǎng)絡(luò)的支持。

添加了圖表,以提供更高級(jí)別的API,以簡化神經(jīng)網(wǎng)絡(luò)的創(chuàng)建,包括允許狀態(tài)在神經(jīng)網(wǎng)絡(luò)中的節(jié)點(diǎn)之間傳輸?shù)膶?duì)象。增加卷積神經(jīng)網(wǎng)絡(luò)(CNN),以支持使用先前獲得的培訓(xùn)數(shù)據(jù)實(shí)施和運(yùn)行深入學(xué)習(xí)。增加了反復(fù)神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn)圖像和矩陣的推理。

iOS 11.0中的新功能 - 間接參數(shù)緩沖區(qū)。

將資源分組為間接參數(shù)緩沖區(qū)(IAB)以減少CPU開銷。MSL:添加[[id(n)]]屬性限定符,以識(shí)別IAB結(jié)構(gòu)中的資源。MTL:添加了MTLIndirectArgumentEncoder協(xié)議將資源編碼為IAB。

MTL:iOS 11.0新增 - 可編程樣本。

在渲染到多采樣渲染目標(biāo)時(shí)配置樣本的位置。更新了MTLRenderPassDescriptor類,以設(shè)置和獲取渲染過程的示例位置。

MSL:iOS 11.0中的新功能 - 統(tǒng)一類型。

添加了統(tǒng)一類型來聲明執(zhí)行繪圖或調(diào)度調(diào)用的圖形或計(jì)算功能的所有線程統(tǒng)一的變量。

MSL:iOS 11.0新增 - 采樣器陣列。

添加了數(shù)組類型來存儲(chǔ)采樣器數(shù)組。

MPS:添加了新的過濾器。

添加了圖像統(tǒng)計(jì)信息的過濾器,例如計(jì)算圖像區(qū)域的均值和方差。添加了將兩個(gè)圖像組合在一起的過濾器,例如元素總和和查找關(guān)鍵點(diǎn)。添加用于矩陣分解和求解的濾波器,例如使用Cholesky或LU(Lower Upper)分解的分解。

MSL:擴(kuò)展功能專業(yè)化。

擴(kuò)展[[color(n)]]和[[raster_order_group(index)]]屬性限定符來處理函數(shù)常量。用于圖形,計(jì)算或用戶功能的結(jié)構(gòu)的成員可以與函數(shù)常量一起使用。

MTL:擴(kuò)展頂點(diǎn)格式。

為小型格式(如char,short和half)添加了新的MTLVertexFormat值。

向iOS添加了雙源混合支持。將固定功能混合操作的兩個(gè)源顏色輸出到單個(gè)渲染目標(biāo)。MSL:向[[color(n)]]屬性限定符添加了一個(gè)新的[[index(i)]]屬性限定符,以輸出第二個(gè)源顏色。MTL:更新MTLBlendFactor以在第二個(gè)源顏色上運(yùn)行。

應(yīng)用服務(wù)

iOS 11.0新功能 - 支持機(jī)器學(xué)習(xí)模式。

添加了核心ML框架,輕松將機(jī)器學(xué)習(xí)模型集成到應(yīng)用程序中。

iOS 11.0中新增 - SiriKit支持視覺代碼。向Sirkit添加了視覺代碼域,以支持顯示交換付款和聯(lián)系信息的視覺代碼。

iOS 11.0中新增 - SiriKit支持筆記和待辦事項(xiàng)列表。向SiriKit添加了列表和Notes域,以支持使用Siri添加備注,與待辦事項(xiàng)列表進(jìn)行交互,以及與提醒進(jìn)行交互。

在SiriKit域中增加了意圖。

將騎行取消和反饋添加到騎行預(yù)訂域。增加了匯款和搜索帳戶到付款域。

iOS 11.0中的新功能 - 查找設(shè)備的標(biāo)題。

添加標(biāo)題到CMDeviceMotion,該屬性返回相對(duì)于CMAttitudeReferenceFrame的標(biāo)題角。返回的值是以度為單位的標(biāo)題。當(dāng)參考幀為xArbitraryZVertical或xArbitraryCorrectedZVertical時(shí),返回負(fù)值。

iOS 11.0中的新功能 - 多路徑TCP。

增加了對(duì)使用多個(gè)接口(如Wi-Fi和Cellular)的支持,通過擴(kuò)展URLSessionConfiguration以支持IETF RFC 6824中定義的多路徑TCP傳輸單個(gè)數(shù)據(jù)流。有關(guān)更多信息,請(qǐng)參閱URLSessionConfiguration.MultipathServiceType。

iOS 11.0中新增 - DNS代理。向網(wǎng)絡(luò)擴(kuò)展框架添加了新的DNS代理應(yīng)用程序擴(kuò)展類型。

Apple Pay中增強(qiáng)的最終用戶交易流程。向PassKit添加了PKPaymentError,該結(jié)構(gòu)用于詳細(xì)報(bào)告用戶運(yùn)輸和付款信息中的錯(cuò)誤以及授權(quán)錯(cuò)誤。開發(fā)人員可以使用該信息來提供自定義的錯(cuò)誤字符串。

更新PKPaymentAuthorizationControllerDelegate中的處理程序方法以接收PKPaymentError。更新PKPaymentRequest以使用PKContactField進(jìn)行聯(lián)系信息。將supportedCountries添加到PKPaymentRequest以指定事務(wù)的支持的國家/地區(qū)。

即使電子錢包中沒有支持付款方式,您也可以提供付款按鈕。 Apple Pay現(xiàn)在提供付款而不離開您的應(yīng)用程序,然后返回結(jié)帳。

iOS 11.0中的新功能 - 在App Store上推廣應(yīng)用內(nèi)購買。

開發(fā)人員可以在App Store產(chǎn)品頁面上宣傳多達(dá)20個(gè)應(yīng)用內(nèi)購買??蛻艨梢栽贏pp Store上開始購買,然后被帶到應(yīng)用程序來完成交易。添加了paymentQueue(_:shouldAddStore:for :),SKPaymentTransactionObserver的一種新方法用于促銷的應(yīng)用內(nèi)購買。應(yīng)用程序需要支持此代理,以便在App Store上顯示促銷的應(yīng)用內(nèi)購買。

iOS 11.0中的新功能 - 實(shí)時(shí)消息。

添加了MSMessageLiveLayout,一個(gè)新的消息布局,用于顯示可以顯示動(dòng)態(tài)內(nèi)容(如游戲)的實(shí)時(shí)消息。每個(gè)實(shí)時(shí)消息都有自己的MSMessagesAppViewController,并且屏幕上可以同時(shí)存在多個(gè)活動(dòng)的實(shí)時(shí)消息。

以下代碼顯示將消息流添加到消息流中,包括不支持實(shí)時(shí)消息的設(shè)備的備用布局。

guard let conversation = activeConversation else {

fatalError("No active conversation")

}

let alternateLayout = MSMessageTemplateLayout()

alternateLayout.image = UIImage(named: "SuperSweetGameImage")

alternateLayout.caption = "$(\(conversation.localParticipantIdentifier)) wants to play a game!"

let layout = MSMessageLiveLayout(alternateLayout: alternateLayout)

let message = MSMessage()

message.layout = layout

conversation.insert(message, completionHandler: nil)

HomeKit的增強(qiáng)觸發(fā)器。 增強(qiáng)觸發(fā)器的基于時(shí)間的條件。 HMSignificantTimeEvent指定日出和日落的偏移量。 HMCalendarEvent指定日期和時(shí)間。 HMDurationEvent指定一個(gè)時(shí)間間隔。

添加了HMCharacteristicThresholdRangeEvent以支持跟蹤一個(gè)范圍內(nèi)的附件狀態(tài),例如當(dāng)溫度介于68和72度之間時(shí)運(yùn)行自動(dòng)化。

添加HMPresenceEvent以根據(jù)用戶的存在或不存在來添加條件。

更新了HMEventTrigger以啟用多次重復(fù)的事件。

通過實(shí)現(xiàn)家庭接收家庭中心狀態(tài)的更新:didUpdateHomeHubState:..

更新了MapKit,以更清楚地顯示開發(fā)人員數(shù)據(jù)。 添加了mutedStandard,一種強(qiáng)調(diào)開發(fā)人員數(shù)據(jù)的新地圖顯示模式。

添加屬性以自定義注釋在碰撞發(fā)生時(shí)的行為。開發(fā)人員使用displayPriority,collisionMode和clusteringIdentifier的組合來影響哪些注釋保留在地圖上。

媒體和網(wǎng)絡(luò)

新的iOS 11.0 - 支持高效率視頻編碼(HEVC)。 高效率視頻編碼(HEVC)是視頻編碼的新標(biāo)準(zhǔn),在同等水平的視覺質(zhì)量下,能夠提供比H.264更好的壓縮效果。

使用AV基金會(huì)播放包含HEVC編碼曲目的電影,并捕獲和導(dǎo)出視頻。

VideoToolbox

客戶端可以對(duì)HEVC視頻比特流進(jìn)行編碼和解碼。

iOS 11.0新功能 - 支持高效圖像格式(HEIF)。

高效圖像格式(HEIF)是一種新的圖像壓縮標(biāo)準(zhǔn),可將相同級(jí)別圖像質(zhì)量的當(dāng)前數(shù)據(jù)壓縮比加倍。

添加了照片和核心圖像框架的功能,以顯示,編碼和導(dǎo)出HEIF圖像。

iOS 11.0中的新功能 - 支持捕獲和操作深度數(shù)據(jù),以及增強(qiáng)的照片捕獲。

向AV Foundation添加了對(duì)象,用于捕獲和表示深度數(shù)據(jù)。有關(guān)詳細(xì)信息,請(qǐng)參閱AVCaptureDepthDataOutput,AVDepthData和相關(guān)API。

添加了AVCapturePhoto,一個(gè)封裝捕獲的照片的信息并支持HEVC和HEIC編碼圖像的對(duì)象。

更新AVCapturePhotoOutput以提供更多信息。

iOS 11.0新功能 - 自動(dòng)存儲(chǔ)管理。

將HTTP實(shí)時(shí)流資源的自動(dòng)存儲(chǔ)管理添加到AVAssetDownloadTask。當(dāng)需要空間時(shí),系統(tǒng)可以自動(dòng)清除過期或不必要的下載。使用優(yōu)先級(jí)來影響清除策略。

iOS 11.0中新增 - AirPlay 2。

AV基礎(chǔ)中某些音頻播放界面改善了AirPlay的可靠性。要利用增加的可靠性,使用AVPlayer播放音頻或新的AVSampleBufferAudioRenderer對(duì)象。 為AirPlay添加了多個(gè)揚(yáng)聲器支持,以支持長形音頻,如音樂和播客。要將應(yīng)用程序標(biāo)記為呈現(xiàn)長格式音頻,請(qǐng)調(diào)用AVAudioSession方法setCategory(_:mode:routeSharingPolicy:options :)并使用AVAudioSessionRouteSharingPolicyLongForm作為參數(shù)值。

FairPlay流密鑰管理。

改進(jìn)了AVContentKeySession的功能。使用AVContentKeySession可以獨(dú)立于播放或下載媒體資源來啟動(dòng)內(nèi)容密鑰請(qǐng)求。符合AVContentKeyRecipient協(xié)議(如AVURLAsset)的對(duì)象可以作為收件人添加到AVContentKeySession,以獲得對(duì)現(xiàn)有內(nèi)容密鑰的訪問,并發(fā)起新的內(nèi)容密鑰請(qǐng)求

增加了更多的實(shí)時(shí)照片調(diào)整。

添加了一個(gè)稱為效果的實(shí)時(shí)照片調(diào)整的集合,將實(shí)時(shí)照片呈現(xiàn)為循環(huán),反彈或長時(shí)間曝光。與常規(guī)實(shí)時(shí)照片不同,Loop和Bounce視頻將以連續(xù)的循環(huán)播放。

添加了一個(gè)playbackStyle,一個(gè)新的屬性,用于標(biāo)識(shí)如何向用戶顯示PHAsset。

系統(tǒng)

iOS 11.0中的新功能 - 熱點(diǎn)配置。 添加了熱點(diǎn)配置的網(wǎng)絡(luò)擴(kuò)展。 有關(guān)詳細(xì)信息,請(qǐng)參閱NEHotspotConfiguration。 更新了核心藍(lán)牙框架。

增加了對(duì)L2CAP頻道的支持。

擴(kuò)展會(huì)話恢復(fù)可以在藍(lán)牙復(fù)位和設(shè)備重新啟動(dòng)時(shí)工作。

更新了核心藍(lán)牙框架,以適應(yīng)iOS,tvOS,watchOS和macOS,以及基于平臺(tái)的標(biāo)記呼叫可用性。

iOS 11.0中的新功能 - 檢測NFC標(biāo)簽并讀取包含NDEF數(shù)據(jù)的消息。

增加了核心NFC,一種用于閱讀NFC數(shù)據(jù)交換格式(NDEF)的近場通信(NFC)標(biāo)簽和數(shù)據(jù)的新框架。

APFS現(xiàn)在是默認(rèn)文件系統(tǒng)。

APFS

現(xiàn)在對(duì)區(qū)分大小寫的文件系統(tǒng)有不規(guī)范化的支持。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 iOS 11beta版已經(jīng)來了,正式版我想應(yīng)該也快了,作為一個(gè)iOS開發(fā)者,這意味著馬上就要著手來適配iOS...
    是的蠻大人閱讀 9,772評(píng)論 13 38
  • 此文只是對(duì)蘋果官方文檔的簡單翻譯,如有翻譯不當(dāng)之處,歡迎指正 在iOS 11中,你可以提供比以往任何時(shí)候都更強(qiáng)大、...
    Zakerberg閱讀 374評(píng)論 0 0
  • 使用iOS 11,您可以體驗(yàn)比以往更強(qiáng)大,更友好的應(yīng)用程序。 增強(qiáng)現(xiàn)實(shí)(Augmented reality)。通過...
    Doria2016閱讀 2,470評(píng)論 2 13
  • 使用iOS 11,您可以體驗(yàn)比以往更強(qiáng)大,更友好的應(yīng)用程序。 增強(qiáng)現(xiàn)實(shí)(Augmented reality)。通過...
    J_WongH閱讀 184評(píng)論 0 0
  • 杭州西湖邊上的一間小屋里 濃煙滾滾。 咳咳咳咳~ 你在干嘛?小哥 做飯。小哥面無表情的看著他,然后低頭系了系圍裙 ...
    誰傾君歸閱讀 514評(píng)論 0 1

友情鏈接更多精彩內(nèi)容