iOS11開發(fā)新增功能大全

1.徹底廢棄32位APP(32-bit Apps)

(1)開發(fā)者從iOS11之后再也不用學(xué)習(xí)32位的APP開發(fā)了

原文:Selecting Learn More from the prompt after tapping on a already installed 32-bit app does nothing. (32340711)

(2)如果從iTunes同步32位的APP會(huì)留下一個(gè)占位符APP(言外之意就是在iOS11后如果通過iTunes同步一個(gè)32位的APP到你的iOS社會(huì)只會(huì)留下一個(gè)空白的APP上枕,無法運(yùn)行)

原文:Syncing 32-bit apps via iTunes leaves a placeholder for the app. (32356790)

(3)?如果在Xcode的target中勾選系統(tǒng)版本為iOS10或者之前的系統(tǒng)油吭,將會(huì)繼續(xù)兼容32位APP(再次強(qiáng)調(diào)只是iOS11不支持32位而已兵多,iOS10及以下還是繼續(xù)兼容)

原文:iOS apps may target iOS 10 or earlier to continue including a 32-bit slice. (31597913)

從iOS11開始粘衬,32位的APP正式退出歷史舞臺(tái)


2.3D Touch

(1)?對于能識別到是電話號碼,地址等能夠響應(yīng)系統(tǒng)事件的文本對象(比如點(diǎn)擊號碼自動(dòng)撥號)貌笨,3D Touch不生效

原文:Using 3D Touch with data detectors (phone numbers, addresses, etc.) does not work. (30504832)

3. 第三方應(yīng)用 (3rd Party Apps)

這里比較多弱判,對開發(fā)而言意義不大,我就撿幾條重點(diǎn)的說了

(1)使用?Facebook Messenger之前必須要安裝Facebook應(yīng)用(國內(nèi)撲街)

原文:Facebook Messenger doesn't launch without the Facebook app installed

(2)最重要:?第三方鍵盤如果沒有選擇允許完全訪問有可能會(huì)出現(xiàn)崩潰問題(iOS10之后蘋果支持第三方鍵盤锥惋,具體設(shè)置在通用——鍵盤選項(xiàng)中)

原文:Third-party keyboards may crash if not allowed full access.

(3)?如果是Skyce通過可能會(huì)讓音頻播放掉線(靜音)

原文:The audio may drop during Skype calls. (32434672)

4.ARKit框架

ARKit是iOS11的最大亮點(diǎn)昌腰,筆者將會(huì)在后續(xù)同步刷新ARKit框架開發(fā)教程

(1)兩件事开伏,一是在調(diào)試ARSession的時(shí)候如果打短信的時(shí)候就會(huì)導(dǎo)致出現(xiàn)VIO 斷點(diǎn)的情況(就是訪問硬件內(nèi)存泄露的一種崩潰斷點(diǎn),不打的話程序就不會(huì)有問題) 二是在AR增強(qiáng)現(xiàn)實(shí)中的錨點(diǎn)是不可見的(理解比較困難遭商,筆者將會(huì)在后續(xù)更新ARKit框架學(xué)習(xí)和開發(fā)博客供讀者學(xué)習(xí)交流)

原文:Continuing from a breakpoint while debugging an ARSession may result in VIO breaking. Any visual objects placed in the world/anchor are not visible. (31561202)

(2)ARSessionConfiguration(該類主要負(fù)責(zé)跟蹤AR設(shè)備方向的一些高級配置)類只有在A9芯片設(shè)備(iPhone6s)及iOS11系統(tǒng)之后才會(huì)生效

原文:ARSessionConfiguration is only supported on iOS devices with an A9 or later processor and will be enabled for all iOS 11 devices in a future beta.

(3)?ARWorldTrackingSessionConfiguration(該類負(fù)責(zé):配置跟蹤設(shè)備的方向和位置,以及檢測設(shè)備攝像頭看到的現(xiàn)實(shí)世界的表面)也是要A9芯片及以后固灵,同上

原文:ARWorldTrackingSessionConfiguration is only supported on iOS devices with an A9 or later processor.

5.AVFoundation

AVFoundation更新比較多,但是設(shè)計(jì)的內(nèi)容比較少劫流,主要是在自定義相機(jī)環(huán)節(jié)開始全面支持雙攝像頭物理變焦的攝像頭捕捉到的高清圖像(為即將要發(fā)布的iPhone8做準(zhǔn)備怎虫,其實(shí)這個(gè)對象在iOS10已經(jīng)出來,當(dāng)時(shí)只有7plus才有雙攝像頭所以開發(fā)中用的極少)


6.藍(lán)牙框架(Bluetooth)

大概意思就是測試版的系統(tǒng)(正式版要到17年9月份發(fā)布)藍(lán)牙不穩(wěn)定困介,iAP協(xié)議是蘋果官方的藍(lán)牙4.0協(xié)議

? Bluetooth accessoriesusingWireless iAP protocol may see connection issuesincertain cases. (31439542)? This betacontainsheadersfortheLE L2CAP channel feature. Full functionality will be availableinthealater beta. (32493297)

1

2

3

4

7.日歷框架(EventKit)

(1)將數(shù)據(jù)存儲(chǔ)到一個(gè)非默認(rèn)的響應(yīng)事件可能會(huì)失敗

Storing data to a non default event store in EventKit may not work. (31335830)

8.Foundation框架

主要更新在網(wǎng)絡(luò)請求URLSessionTask這一部分

第三點(diǎn)相當(dāng)牛逼,網(wǎng)絡(luò)請求能夠等待安全網(wǎng)絡(luò)才請求蘸际,這對于開發(fā)而言意義重大座哩。筆者將會(huì)在后期上代碼測試

(1)比較長,大概的意思就是加了一些API粮彤,支持應(yīng)用程序退后后臺(tái)時(shí)仍然能與你的Watch(蘋果手表)通訊根穷。(蘋果手表網(wǎng)絡(luò)請求依賴于手機(jī)連接的wifi)

Added a scheduling API to URLSessionTaskthat allows background URLSession clients to schedule tasks in the future, enabling easy background app refresh semantics for apps, watchOS complications, and more. The API also allows developers to update requests before transmission to address cases where the request has become stale when scheduled in the future. Additions include the earliestBeginDate, countOfBytesClientExpectsToSend, and countOfBytesClientExpectsToReceive properties of URSessionTask, and the URLSession:task:willBeginDelayedRequest:completionHandler method of URLSessionTaskDelegate protocol. (27866330)

(2)獲取網(wǎng)絡(luò)下載進(jìn)度建議使用新屬性

URLSessionTask adopts the ProgressReporting protocol providing a consistent mechanism for URLSession clients to track the progress of URLSessionTask using the new progress property. (30834550)

(3)添加了一個(gè)更加靈活的網(wǎng)絡(luò)請求API,它能夠等待直到你的手機(jī)連接上了安全的網(wǎng)絡(luò)导坟,如果是不安全的網(wǎng)絡(luò)則該網(wǎng)絡(luò)請求不會(huì)調(diào)用

Added an Adaptable Connectivity API to URLSession that enables tasks to automatically monitor and wait for satisfactory network connectivity, instead of immediately failing with an error when connectivity is unsatisfactory. Additions include the waitsForConnectivity property of URLSessionConfiguration and the URLSession:taskIsWaitingForConnectivity: method of the URLSessionTaskDelegate protocol

(4)添加了APP應(yīng)用程序加載網(wǎng)絡(luò)時(shí)的一些數(shù)據(jù)編碼支持屿良。(對開發(fā)意義不大,后面一大堆是舉例說明惫周,br指的是web前端的換行標(biāo)簽)

Added support for HTTP brotli content encoding to URLSession. By default, HTTP requests contain a br value (in addition to gzip and deflate) for the Accept-Encoding HTTP header, informing the web server that the user agent supports brotli encoding. The web server can send an HTTP body with Content-Encoding: br in the HTTP header to indicate that the content is brotli-encoded. URLSession automatically decompresses the HTTP body data and passes the decoded data back to the client in the same way it does for Content-Encoding: gzip. For binary compatibility reasons, URLSession brotli support is enabled only for apps built using the iOS 11 SDK. (27724985)

最后一個(gè)環(huán)節(jié)是iOS開發(fā)中一半以上代碼都出自這個(gè)框架尘惧,大家猜到了么? 不錯(cuò)递递!就是UIKit框架

UIKit框架在iOS11中解決了一個(gè)UITableView問題喷橙,新增了一堆代碼(主要與新功能文件管理有關(guān))

9.UIKit框架

本次iOS11系統(tǒng)更新UIKit較多,主要是因?yàn)閕OS11新增的文件管理功能并沒有提供單獨(dú)的框架登舞,而是被直接繼承在UIKit框架中贰逾,測試版問題比較多,實(shí)際還是以正式版為準(zhǔn)

關(guān)于iOS11文件管理功能的開發(fā)菠秒,筆者將會(huì)后續(xù)提供教程學(xué)習(xí)交流

此次iOS11關(guān)于UITableView的優(yōu)化也比較多疙剑,筆者將會(huì)在后續(xù)深入研究探索供大家學(xué)習(xí)交流

問題修復(fù)

設(shè)置UITableView的delaysContentTouches延遲響應(yīng)屬性為NO,再也不會(huì)立即觸發(fā)cell的響應(yīng)事件(delaysContentTouches是UIScrollerView的屬性践叠,叫做延遲響應(yīng)處理言缤。默認(rèn)為YES延遲處理,作用就是當(dāng)點(diǎn)擊scrollerview中的按鈕時(shí)不會(huì)被系統(tǒng)判定為ScrollerView的滾動(dòng)手勢禁灼,對這個(gè)屬性不了解的小白們可以百度哈轧简,這里筆者不再詳細(xì)累述)

Setting the delaysContentTouches property of UITableView to false now works correctly and results in cells highlighting immediately on a touch down event. (27102830)

新的變化

(1)UIDocumentBrowserViewController(顯示沙盒文件瀏覽器)不會(huì)顯示UIDocumentPickerExtensionViewController列表中的應(yīng)用程序擴(kuò)展來源。雖然這些會(huì)在將在的測試版中重新啟用,請考慮使用一個(gè)NSFileProviderExtension相反,因?yàn)樗鼈兪羌稍赨IDocumentBrowserViewController而不是在一個(gè)單獨(dú)的表

UIDocumentBrowserViewController does not show UIDocumentPickerExtensionViewController app extensions in the list of sources. While these will be re-enabled in a future beta, please consider using an NSFileProviderExtension instead, as they are integrated in UIDocumentBrowserViewController instead of being presented in a separate sheet. (31975976)

(2)當(dāng)拖動(dòng)文件超過5項(xiàng),文件移動(dòng)/取消動(dòng)畫使用一個(gè)默認(rèn)的動(dòng)畫匾二。前五個(gè)文件夾系統(tǒng)調(diào)用移動(dòng)/取消預(yù)覽視圖,即使它們沒有使用哮独。在后面的測試,系統(tǒng)不會(huì)讓這些調(diào)用,而不是為動(dòng)畫提供了一個(gè)額外的API與項(xiàng)目的自定義動(dòng)畫不能應(yīng)用拳芙。

When dragging more than 5 items, the drop/cancel animation uses a default animation. The system calls the dropping/cancelling preview calls for the first 5 of these items, even though they are not used. In a later beta, the system will not make these calls, and instead provides an additional API for animating alongside items for which a custom animation cannot be applied. (32299785)

(3)使用UITargetedDragPreview和UIDragPreview而不是UIURLDragPreviewView,因?yàn)樵谙乱粋€(gè)版本中這個(gè)API將會(huì)被移除(移除并不意味著消失皮璧,有可能在測試版中開發(fā)舟扎,正式版中成了私有API)

Do not use the class UIURLDragPreviewView as it will be removed in a later beta.To make drag previews of URLs, use UIDragPreview and UITargetedDragPreview. (32306613)

(4)在storyboard或者xib中,Xcode9之后的tableview顯示cell和header和footer將會(huì)更加的區(qū)分明顯(實(shí)際上就是storyboard的顯示細(xì)節(jié)小優(yōu)化)

Table views in Interface Builder documents compiled with Xcode 9.0 may have fixed heights for rows, section headers, and section footers, and may not self-size by default. (32188814)

(5)在iOS11中UITableView有了一個(gè)新的系統(tǒng)手勢可以快速選擇行:兩根手指快速的輕擊cell悴务,可以同時(shí)選中兩個(gè)cell進(jìn)入編輯狀態(tài)睹限。如果兩個(gè)手指存在不同步問題,則會(huì)默認(rèn)識別其中的一個(gè)手指表示單選cell

UITableView has a new system gesture for quickly selecting rows. A two-finger tap on table views that support multiple selection sets the table view to editing, if it is not already, and select the tapped row. Unlike a single-finger tap, which toggles selection, the two- finger tap always selects the tapped row and has no effect if the row is already selected. This new gesture is enabled only in apps built for iOS 11. (29127664)

(6)UITableView新增了一個(gè)屬性separatorInsetReference,作用是可以自定義一個(gè)cell分割線的邊距

UITableView has a new property, separatorInsetReference, that changes how a custom value set in the separatorInset property is interpreted. By default, the value is .fromCellEdges, which means that custom separatorInset values are always interpreted as an inset from the edges of the cell, even in cases where table view would normally use larger automatic insets for the separator, such as a very wide table view when the cellLayoutMarginsFollowReadableWidth property is true

Set the separatorInsetReference to .fromAutomaticInsets to use the separatorInset as a fixed distance from the automatic inset that a table view would normally use

Note that you can always use UITableViewAutomaticDimension for any edge of the separatorInset that you set, to receive the automatic inset on that edge. (31000402)

(7)iOS11中讯檐,UITableView的cell或者表頭表尾默認(rèn)采用自適應(yīng)高度的方案羡疗,當(dāng)然如果之前的tableview不想使用這個(gè)功能可以直接禁掉,或者在自適應(yīng)高度代理中返回0即可

Table views now use estimated heights by default, which also means that cells and section header/footer views now self-size by default. The default value of the estimatedRowHeight, estimatedSectionHeaderHeight, and estimatedSectionFooterHeight properties is now UITableViewAutomaticDimension, which means the table view selects an estimated height to use. You should still provide a more accurate estimate for each property if possible, which is your best guess of the average value of the actual heights. If you have existing table view code that behaves differently when you build your app with the iOS 11 SDK, and you don’t want to adopt self-sizing, you can restore the previous behavior by disabling estimated heights by setting a value of zero for each estimated height property. (30197915)

(8)當(dāng)UITableViewCell的內(nèi)容(主要是文本)高度過高時(shí)别洪,可以通過設(shè)置UITableViewCell的numberOfLines屬性來實(shí)現(xiàn)類似于UILabel一樣的高度自適應(yīng)變化


本文轉(zhuǎn)載自::http://blog.csdn.net/u013263917/article/details/72895728,以及版權(quán)歸屬黑馬程序員:http://www.itheima.com

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末叨恨,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子挖垛,更是在濱河造成了極大的恐慌痒钝,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痢毒,死亡現(xiàn)場離奇詭異送矩,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)哪替,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門栋荸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人凭舶,你說我怎么就攤上這事蒸其。” “怎么了库快?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵摸袁,是天一觀的道長。 經(jīng)常有香客問我义屏,道長靠汁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任闽铐,我火速辦了婚禮蝶怔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘兄墅。我一直安慰自己踢星,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布隙咸。 她就那樣靜靜地躺著沐悦,像睡著了一般成洗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上藏否,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天瓶殃,我揣著相機(jī)與錄音,去河邊找鬼副签。 笑死遥椿,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的淆储。 我是一名探鬼主播冠场,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼本砰!你這毒婦竟也來了碴裙?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤灌具,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后譬巫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體咖楣,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年芦昔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了诱贿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咕缎,死狀恐怖珠十,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情凭豪,我是刑警寧澤焙蹭,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站嫂伞,受9級特大地震影響孔厉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜帖努,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一撰豺、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拼余,春花似錦污桦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽小作。三九已至,卻和暖如春梭纹,著一層夾襖步出監(jiān)牢的瞬間躲惰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工变抽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留础拨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓绍载,卻偏偏與公主長得像诡宗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子击儡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載:http://blog.csdn.net/u013263917/article/details/728957...
    Jonath閱讀 1,137評論 0 4
  • 前言2017年6月6日凌晨一點(diǎn)(北京時(shí)間)塔沃,蘋果在2017WWDC大會(huì)上發(fā)布了全新的iOS11系統(tǒng)⊙舻可能大家印象比...
    Daimer閱讀 1,088評論 0 1
  • 轉(zhuǎn)載請標(biāo)注出處:www.reibang.com/p/1167d2ecd0ac:,以及版權(quán)歸屬黑馬程序員:http:...
    坤小閱讀 3,654評論 4 24
  • 留一個(gè)夢蛀柴, 一個(gè)竊竊的喜, 一個(gè)你的我矫夯, 一個(gè)我的你鸽疾, 好想拉著你的手, 卻不能走在陽光里训貌, 但在夢里的我制肮, 悄悄...
    依依云閱讀 123評論 0 0
  • 已經(jīng)忘記自己到底有很久沒有提筆了款慨,生活的快節(jié)奏儒飒,讓我倉促的做著每一件事,每件事都急促而混亂檩奠。 不曾想自己的生活竟然...
    陳一藝閱讀 472評論 0 0