【移動應(yīng)用開發(fā)技術(shù)】ios 8 適配須知_第1頁
【移動應(yīng)用開發(fā)技術(shù)】ios 8 適配須知_第2頁
【移動應(yīng)用開發(fā)技術(shù)】ios 8 適配須知_第3頁
【移動應(yīng)用開發(fā)技術(shù)】ios 8 適配須知_第4頁
【移動應(yīng)用開發(fā)技術(shù)】ios 8 適配須知_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動應(yīng)用開發(fā)技術(shù)】ios8適配須知

iOS8.0本文總結(jié)了關(guān)鍵developer-related特性介紹了iOS8,目前航運(yùn)iOS設(shè)備上運(yùn)行。本文還列出了文檔更詳細(xì)地描述新功能。關(guān)于已知問題的最新新聞和信息,明白了iOS8版本說明。新api的完整列表添加在iOS8中,明白了iOS8.0API差別。有關(guān)新設(shè)備的更多信息,請參閱iOS設(shè)備兼容性參考。應(yīng)用程序擴(kuò)展iOS8允許您擴(kuò)展系統(tǒng)通過提供一個(gè)的選擇區(qū)域應(yīng)用程序擴(kuò)展代碼,支持自定義功能,用戶任務(wù)的上下文中。例如,您可能提供一個(gè)應(yīng)用程序擴(kuò)展,幫助用戶發(fā)布內(nèi)容到你的社交分享網(wǎng)站。用戶安裝和啟用這個(gè)擴(kuò)展之后,他們可以選擇它當(dāng)他們點(diǎn)擊分享按鈕在當(dāng)前的應(yīng)用程序。您的自定義共享擴(kuò)展提供了接受的代碼,驗(yàn)證,和用戶的帖子內(nèi)容。系統(tǒng)的擴(kuò)展列表共享菜單和實(shí)例化它,當(dāng)用戶選擇它。在Xcode中,您創(chuàng)建一個(gè)應(yīng)用程序擴(kuò)展添加一個(gè)預(yù)配置的應(yīng)用程序擴(kuò)展目標(biāo)應(yīng)用程序。在用戶安裝應(yīng)用程序,其中包含一個(gè)擴(kuò)展,用戶可以設(shè)置應(yīng)用程序擴(kuò)展。當(dāng)用戶運(yùn)行其他應(yīng)用程序時(shí),該系統(tǒng)使啟用擴(kuò)展可用適當(dāng)?shù)南到y(tǒng)界面,如分享菜單。iOS支持應(yīng)用程序擴(kuò)展為以下方面,這被稱為擴(kuò)展點(diǎn):分享。與社交網(wǎng)站或其他實(shí)體分享內(nèi)容。行動。執(zhí)行一個(gè)簡單的任務(wù)與所選內(nèi)容。今天。提供一個(gè)快速更新或啟用一個(gè)簡短的任務(wù)在今天的通知中心。照片編輯。執(zhí)行編輯照片或視頻中的照片應(yīng)用程序。存儲提供商。提供一個(gè)文件存儲位置,可以由其他應(yīng)用程序訪問。應(yīng)用程序使用一個(gè)文檔選擇器視圖控制器可以打開的文件管理的存儲提供商或移動文件到存儲提供商。自定義鍵盤。提供一個(gè)自定義鍵盤,用戶可以選擇系統(tǒng)的鍵盤為所有應(yīng)用程序在設(shè)備上。每個(gè)擴(kuò)展點(diǎn)定義適當(dāng)?shù)腶pi為其目的。當(dāng)你使用一個(gè)應(yīng)用程序擴(kuò)展模板開始發(fā)展,你會得到一個(gè)默認(rèn)目標(biāo)包含方法存根和屬性列表設(shè)置定義的擴(kuò)展點(diǎn)你選擇。創(chuàng)建擴(kuò)展的更多信息,請參閱應(yīng)用程序擴(kuò)展編程指南。觸摸ID認(rèn)證您的應(yīng)用程序現(xiàn)在可以使用觸摸ID對用戶進(jìn)行身份驗(yàn)證。一些應(yīng)用程序可能需要獲得他們所有的內(nèi)容,而其他人可能需要獲得特定的信息或選擇。在這兩種情況下,您可能需要用戶進(jìn)行身份驗(yàn)證之后再繼續(xù)。使用本地身份驗(yàn)證框架(LocalAuthentication.framework)向用戶顯示一個(gè)警告,application-specified原因?yàn)槭裁从脩暨M(jìn)行身份驗(yàn)證。當(dāng)你的應(yīng)用程序得到回復(fù),它可以根據(jù)用戶是否能夠反應(yīng)成功進(jìn)行身份驗(yàn)證。有關(guān)更多信息,請參見當(dāng)?shù)氐恼J(rèn)證框架參考。PassKitPassKit框架增加了支持付款和付款請求。付款請求讓用戶安全地為您提供他們的付款和聯(lián)系信息為物理商品和服務(wù)。付款將被添加到存折通過網(wǎng)絡(luò)付款,信用卡發(fā)卡機(jī)構(gòu)和銀行等,讓用戶選擇他們的賬戶支付網(wǎng)絡(luò)基金支付。有關(guān)更多信息,請參見PassKit框架引用。照片拍攝更好的照片在你的應(yīng)用程序,提供新的照片應(yīng)用程序編輯功能,并創(chuàng)建新的、更高效的工作流訪問用戶的照片和視頻的資產(chǎn)。照片的框架這些照片框架(Photos.framework)提供了新的api來處理照片和視頻資產(chǎn),資產(chǎn),包括iCloud照片,由照片管理應(yīng)用程序。這個(gè)框架是一個(gè)更有能力替代資產(chǎn)庫的框架。抓取的關(guān)鍵特性包括一個(gè)線程安全的架構(gòu)和緩存縮略圖和全尺寸的資產(chǎn),要求改變資產(chǎn),觀察變化由其他應(yīng)用程序,可恢復(fù)的資產(chǎn)內(nèi)容的編輯。有關(guān)更多信息,請參見照片框架引用。使用相關(guān)的UI框架(照片PhotosUI.framework)來創(chuàng)建應(yīng)用程序擴(kuò)展應(yīng)用程序編輯圖片和視頻資產(chǎn)照片。更多的信息,知道了應(yīng)用程序擴(kuò)展編程指南。手動相機(jī)控制AV基礎(chǔ)框架(AVFoundation.framework)比以往更容易拍出精彩的照片。你的應(yīng)用程序可以直接控制相機(jī)的焦點(diǎn),白平衡,曝光設(shè)置。此外,應(yīng)用程序可以使用將曝光捕捉自動捕獲圖像不同的曝光設(shè)置。更多信息見AV基礎(chǔ)框架引用。改進(jìn)的相機(jī)功能使用以下api來發(fā)現(xiàn)并啟用新相機(jī)特性發(fā)現(xiàn)iPhone6和iPhone6加上:一個(gè)新的屬性(videoHDRSupported)可以確定一個(gè)捕獲設(shè)備支持高動態(tài)范圍流。一個(gè)新的視頻穩(wěn)定模式(AVCaptureVideoStabilizationModeCinematic)提供了更多的電影結(jié)果捕獲視頻。一個(gè)新的屬性(highResolutionStillImageOutputEnabled)可以用來設(shè)置一個(gè)avcapturestillp_w_picpathoutput對象捕捉仍然更高分辨率的圖片。一個(gè)新的屬性(autoFocusSystem)可用于確定如何執(zhí)行自動聚焦相機(jī)。游戲技術(shù)改進(jìn)在iOS8比以往任何時(shí)候都更容易實(shí)現(xiàn)你的游戲的圖形和音頻功能。利用高層框架易于開發(fā)、或使用新的低級增強(qiáng)利用GPU的力量。金屬金屬提供極低開銷訪問A7和A8gpu,使極高的性能對你復(fù)雜的圖形渲染和計(jì)算任務(wù)。金屬作為昂貴的國家消除了許多性能bottlenecks-such確認(rèn)被發(fā)現(xiàn)在傳統(tǒng)圖形api。金屬是顯式設(shè)計(jì)將所有昂貴的狀態(tài)轉(zhuǎn)換和編譯操作的關(guān)鍵路徑你最敏感的渲染代碼性能。金屬提供了預(yù)編譯的著色器、狀態(tài)對象和明確的指揮調(diào)度,確保您的應(yīng)用程序?qū)崿F(xiàn)盡可能高的性能和效率的GPU圖形和計(jì)算任務(wù)。這個(gè)設(shè)計(jì)理念延伸到工具用于構(gòu)建應(yīng)用程序,當(dāng)你的應(yīng)用程序是建立Xcode項(xiàng)目中金屬著色器編譯成一個(gè)默認(rèn)庫,消除大部分的準(zhǔn)備這些著色器的運(yùn)行成本。圖形、計(jì)算和位塊傳輸命令無縫、高效地設(shè)計(jì)用于在一起。金屬是專門利用現(xiàn)代建筑設(shè)計(jì)考慮,如多處理和共享內(nèi)存,使它易于并行化GPU的創(chuàng)建命令。用金屬,你有流線型的API,一個(gè)統(tǒng)一的圖形和計(jì)算著色語言,和Xcode-based工具,所以你不需要學(xué)習(xí)多個(gè)框架、語言和工具來充分利用GPU在你的游戲或應(yīng)用程序。使用金屬的更多信息,請參閱金屬編程指南,金屬框架參考,金屬著色語言指南。SceneKitSceneKit是一個(gè)objective-c框架構(gòu)建簡單的游戲和豐富的應(yīng)用與3d圖形用戶界面,結(jié)合高性能渲染引擎和一個(gè)高層,描述性的API。SceneKit以來一直使用OSXv10.8,現(xiàn)在首次在iOS。低層api(比如OpenGLES)需要實(shí)現(xiàn)渲染算法精確詳細(xì)地顯示一個(gè)場景。相比之下,SceneKit讓你描述你的場景的content-geometry、材料、燈光、相機(jī)的,后來動畫它通過描述這些對象的變化。SceneKit的3d物理引擎活躍你的應(yīng)用程序或游戲通過模擬重力,部隊(duì),剛體碰撞,和關(guān)節(jié)。添加高級行為,使其易于使用輪式車輛如汽車在一個(gè)場景,并添加物理領(lǐng)域,應(yīng)用徑向重力、電磁、湍流對一個(gè)區(qū)域內(nèi)的對象的效果。使用OpenGLES呈現(xiàn)更多的內(nèi)容到一個(gè)場景,或提供GLSL著色器,更換或增加SceneKit的呈現(xiàn)。你也可以添加shader-basedSceneKit呈現(xiàn)的后處理技術(shù),如顏色分級或屏幕空間環(huán)境閉塞。有關(guān)更多信息,請參見SceneKit框架引用。SpriteKitSpriteKit框架(SpriteKit.framework)添加新功能,讓它更容易支持高級的游戲效果。這些特性包括支持自定義OpenGLES著色器和照明,與SceneKit的集成,和先進(jìn)的新物理效果和動畫。例如,您可以創(chuàng)建物理字段來模擬重力,阻力,并使用的電磁力SKFieldNode類。你可以輕松地創(chuàng)建物理身體逐碰撞面具。是比以往更容易銷其母的物理身體,即使母公司沒有自己的物理身體。這些新的物理特性使復(fù)雜的模擬更容易實(shí)現(xiàn)。使用約束來修改物理效果和動畫的內(nèi)容為例,你可以總是指向另一個(gè)節(jié)點(diǎn)一個(gè)節(jié)點(diǎn)的兩個(gè)節(jié)點(diǎn)的移動。Xcode6還包含新的材質(zhì)和場景編輯器,節(jié)省你的時(shí)間當(dāng)你創(chuàng)建你的游戲。創(chuàng)建一個(gè)場景的內(nèi)容,指定哪些節(jié)點(diǎn)出現(xiàn)在現(xiàn)場,這些節(jié)點(diǎn)的特點(diǎn),包括物理效應(yīng)。現(xiàn)場然后序列化到一個(gè)文件,你的游戲可以很容易地加載。這個(gè)框架的類的信息,請參閱SpriteKit框架引用和SpriteKit編程指南。AV音頻引擎AVFoundation框架(AVFoundation.framework)增加了支持為各行業(yè)的音頻功能比核心音頻在更高層次的抽象。這些新的音頻功能都可以在OSX和iOS和包括自動訪問音頻輸入和輸出硬件、音頻錄制和回放,以及音頻文件解析和轉(zhuǎn)換。你也獲得音頻單元生成特效和過濾器,音高和回放速度管理、音響和3d音頻環(huán)境和MIDI樂器。有關(guān)更多信息,請參見AV基礎(chǔ)框架引用。OpenGLESiOS8以下新的擴(kuò)展OpenGLES補(bǔ)充道。的APPLE_clip_distance擴(kuò)展增加了支持硬件夾飛機(jī)OpenGLES2.0和3.0。的APPLE_texture_packed_float增加了兩個(gè)新的浮點(diǎn)紋理格式,R11F_G11F_B10F和RGB9_E5。的APPLE_color_buffer_packed_float擴(kuò)展基礎(chǔ)上APPLE_texture_packed_float這樣的新紋理格式可以使用framebuffer對象。這意味著應(yīng)用程序可以渲染到幀緩存,使用這些格式之一。HealthKit框架HealthKit(HealthKit.framework)是一個(gè)新的框架來管理用戶的與健康有關(guān)的信息。為應(yīng)用程序和設(shè)備的擴(kuò)散跟蹤健康和健身信息,用戶很難得到一個(gè)明確的證據(jù)表明他們正在做的事情。HealthKit使應(yīng)用程序更容易分享與健康有關(guān)的信息,這些信息是否來自設(shè)備連接到一個(gè)iOS設(shè)備或者由用戶手動輸入。用戶的健康信息存儲在一個(gè)集中的和安全的位置。用戶可以看到所有數(shù)據(jù)顯示在醫(yī)療應(yīng)用。當(dāng)你的應(yīng)用程序?qū)崿F(xiàn)了支持HealthKit時(shí),它會得到用戶訪問與健康有關(guān)的信息,可以提供關(guān)于用戶的信息,而不需要實(shí)現(xiàn)對特定fitness-tracking設(shè)備的支持。用戶決定哪些數(shù)據(jù)應(yīng)該與你的應(yīng)用程序共享。一旦與你的應(yīng)用程序共享數(shù)據(jù),應(yīng)用程序可以注冊通知時(shí),數(shù)據(jù)變化;你有細(xì)粒度的控制當(dāng)你的應(yīng)用程序通知。例如,請求應(yīng)用程序通知每當(dāng)用戶需要他們的血壓,或通知只有當(dāng)測量顯示,用戶的血壓太高了。HomeKit框架HomeKit(HomeKit.framework)是一種新的溝通和控制框架連接設(shè)備在用戶的家。新設(shè)備的家庭提供更多的連通性和更好的用戶體驗(yàn)。HomeKit提供了一種標(biāo)準(zhǔn)化的方式來與這些設(shè)備通信。您的應(yīng)用程序可以使用HomeKit與設(shè)備通信用戶在他們的房子里。使用你的應(yīng)用程序,用戶可以發(fā)現(xiàn)設(shè)備在家里和配置它們。他們還可以創(chuàng)建行動來控制這些設(shè)備。用戶可以使用Siri團(tuán)體一起行動,引發(fā)他們。一旦創(chuàng)建一個(gè)配置,用戶可以邀請其他人分享訪問它。例如,用戶可能會暫時(shí)提供房子的客人。使用HomeKit配件模擬器來測試HomeKit應(yīng)用的通信設(shè)備。有關(guān)更多信息,請參見HomeKit框架引用。iCloudiCloud包括一些變化,影響現(xiàn)有應(yīng)用程序的行為,影響用戶的應(yīng)用程序。Document-Related數(shù)據(jù)遷移云基礎(chǔ)設(shè)施時(shí)更加健壯和可靠的文檔和用戶設(shè)備和服務(wù)器之間的數(shù)據(jù)傳輸。當(dāng)一個(gè)用戶安裝iOS8和iCloud賬戶登錄設(shè)備,iCloud服務(wù)器執(zhí)行一次性遷移的文件和數(shù)據(jù),用戶的賬戶。這種遷移涉及的文檔和數(shù)據(jù)復(fù)制到一個(gè)新版本的應(yīng)用程序的容器目錄。新的容器只能運(yùn)行iOS8或OSXv10.10設(shè)備。設(shè)備運(yùn)行舊的操作系統(tǒng)可以繼續(xù)訪問原始容器,但更改容器沒有出現(xiàn)在新容器和更改新的容器沒有出現(xiàn)在原始容器。CloudKitCloudKit(CloudKit.framework)是一個(gè)管道之間移動數(shù)據(jù)的應(yīng)用程序和iCloud。與其他云技術(shù)在數(shù)據(jù)傳輸發(fā)生透明,CloudKit給你控制轉(zhuǎn)移發(fā)生時(shí)。您可以使用CloudKit來管理所有類型的數(shù)據(jù)。應(yīng)用程序直接使用CloudKit可以將數(shù)據(jù)存儲在一個(gè)存儲庫,由所有用戶共享。這個(gè)公共存儲庫與應(yīng)用程序本身,甚至可用設(shè)備上沒有注冊iCloud賬戶。作為應(yīng)用程序開發(fā)人員,您可以直接管理該容器中的數(shù)據(jù),看看通過CloudKit儀表板用戶所做的所有更改。這個(gè)框架的類的更多信息,見CloudKit框架引用。文檔選擇器文檔選擇器視圖控制器(UIDocumentPickerViewController)授予用戶訪問文件應(yīng)用程序的沙箱之外。這是一個(gè)簡單的應(yīng)用程序之間共享文件的機(jī)制。它還支持更復(fù)雜的工作流,因?yàn)橛脩艨梢跃庉嬕粋€(gè)文檔與多個(gè)應(yīng)用程序。文檔選擇器允許您訪問文件的文檔提供者。例如,iCloud文檔提供者授予訪問文檔存儲在另一個(gè)應(yīng)用程序的iCloud容器。第三方開發(fā)者使用存儲提供商可以提供額外的文檔提供者擴(kuò)展。有關(guān)更多信息,請參見文檔選擇器編程指南。切換切換是OSX和iOS的特性,擴(kuò)展了用戶體驗(yàn)跨設(shè)備的連續(xù)性。切換使用戶能夠開始一個(gè)活動在一個(gè)設(shè)備,然后切換到另一個(gè)設(shè)備和簡歷相同的活動在其他設(shè)備上。例如,一個(gè)用戶在Safari瀏覽一長文章移動到一個(gè)iOS設(shè)備的簽署相同的蘋果ID,和相同的網(wǎng)頁自動打開在iOSSafari,相同的原始設(shè)備上滾動的位置。盡可能無縫切換使這種體驗(yàn)。參與交接,一個(gè)應(yīng)用程序采用一個(gè)小API的基礎(chǔ)。每一個(gè)正在進(jìn)行的活動在一個(gè)應(yīng)用程序是由一個(gè)用戶活動對象包含數(shù)據(jù)需要恢復(fù)一個(gè)活動在另一個(gè)設(shè)備。當(dāng)用戶選擇恢復(fù)活動,對象是發(fā)送到恢復(fù)設(shè)備。每個(gè)用戶活動對象調(diào)用委托對象,刷新活動狀態(tài)的時(shí)候,比如在用戶活動對象之間發(fā)送設(shè)備。如果繼續(xù)一個(gè)活動需要更多的用戶活動不是很容易轉(zhuǎn)移的數(shù)據(jù)對象,恢復(fù)應(yīng)用程序可以選擇打開一個(gè)流的原始應(yīng)用程序?;谖臋n的應(yīng)用程序自動為用戶繼續(xù)使用iCloud-based文檔支持活動。有關(guān)更多信息,請參見切換編程指南。支持新屏幕大小和鱗片應(yīng)用程序鏈接對iOS8,后來應(yīng)該準(zhǔn)備支持iPhone更大的屏幕尺寸6和iPhone6優(yōu)先。iPhone6另外,應(yīng)用程序也應(yīng)該準(zhǔn)備支持一個(gè)新的屏幕。特別值得一提的是,應(yīng)用程序支持OpenGLES和金屬也可以選擇大小呈現(xiàn)CAEAGLLayer或CAMetalLayer獲得最佳性能的iPhone6加上。讓系統(tǒng)知道你的應(yīng)用程序支持iPhone屏幕尺寸6,故事板啟動屏幕文件包含在您的應(yīng)用程序的包。在運(yùn)行時(shí),系統(tǒng)尋找一個(gè)故事板啟動屏幕文件。如果存在這樣一個(gè)文件,系統(tǒng)假設(shè)應(yīng)用程序支持iPhone6和6加上明確在全屏模式下,并運(yùn)行它。如果這樣一個(gè)圖像不存在,系統(tǒng)報(bào)告一個(gè)較小的屏幕尺寸(320年由480分或320568點(diǎn)),繼續(xù)你的應(yīng)用程序在屏幕上設(shè)置的計(jì)算是正確的。內(nèi)容然后縮放以適合更大的屏幕。更多關(guān)于指定應(yīng)用程序的啟動圖像信息,明白了添加應(yīng)用程序圖標(biāo)和啟動屏幕文件。iOS8添加新特性,使處理屏幕大小和方向更多功能。比以往任何時(shí)候都更容易為你的應(yīng)用創(chuàng)建一個(gè)接口,在iPad和iPhone,調(diào)整方向的變化和不同的屏幕大小。使用大小類,您可以檢索的一般信息大小的設(shè)備目前的取向。您可以使用這些信息來進(jìn)行初始假設(shè)應(yīng)該顯示哪些內(nèi)容以及這些界面元素彼此相關(guān)。然后,使用自動布局調(diào)整和重新定位這些元素提供適合該地區(qū)的實(shí)際大小。Xcode6使用大小類和autolayout創(chuàng)建故事板,自動適應(yīng)類變化和不同的屏幕尺寸大小。特征描述類和一個(gè)接口的規(guī)模大小大小類特征分配給一個(gè)用戶界面元素,比如屏幕或視圖。有兩種類型的大小類iOS8:定期和緊湊。常規(guī)尺寸類表示大量的屏幕空間,如在一個(gè)iPad,或一般采用范例,提供大量的屏幕空間的錯(cuò)覺,比如iPhone上滾動。每個(gè)設(shè)備由大小定義類,垂直和水平。圖1和圖2顯示本機(jī)為iPad大小類。iPad的屏幕空間,有一個(gè)標(biāo)準(zhǔn)尺寸類在垂直和水平方向在肖像和景觀方向。圖1iPad大小類肖像圖2iPad大小類景觀類iphone基于不同大小的設(shè)備及其取向。在肖像,屏幕有一個(gè)緊湊的大小類水平和常規(guī)大小類垂直。這對應(yīng)于垂直滾動的常見使用模式的更多信息。當(dāng)iphone在景觀,它們的大小類有所不同。大多數(shù)iphone有一個(gè)緊湊的大小類從水平和垂直方向,如圖所示圖3和圖4。iPhone6+有一個(gè)屏幕大到足以支持常規(guī)的寬度在橫向模式,如所示圖5。圖3iPhone大小類的肖像圖4iPhone大小類景觀圖5iPhone6+類景觀你可以改變大小與一個(gè)視圖類。這種靈活性是特別有用,當(dāng)一個(gè)較小的觀點(diǎn)是包含在一個(gè)更大的觀點(diǎn)。使用默認(rèn)大小類安排更大的視圖的用戶界面和安排信息的子視圖基于無論大小類你覺得最合適的子視圖。支持大小類,類是新的或修改如下:的UITraitCollection類是用來描述特征分配給一個(gè)對象的集合。特征指定大小類、顯示比例和成語為特定對象。類,支持UITraitEnvironment協(xié)議(如uiscreen,uiviewcontroller和uiview)的特征集合。您可以檢索對象的特征集合和這些特性改變時(shí)執(zhí)行操作。的UIImageAsset類是用來像圖像分組根據(jù)他們的特征。類似的圖片稍微不同的特征組合為單個(gè)資產(chǎn),然后自動檢索正確的圖像從圖像資產(chǎn)特定特征集合。的UIImage使用圖像資產(chǎn)類被修改。類,支持UIAppearance協(xié)議可以自定義對象的外觀根據(jù)其特征集合。的uiviewcontroller類增加了檢索的能力特征集合的子視圖。你也可以布置視圖類變化通過改變大小viewWillTransitionToSize:withTransitionCoordinator:方法。Xcode6支持統(tǒng)一的故事板。故事板可以添加或刪除視圖基于規(guī)模和布局約束類,顯示在視圖控制器。而不是維護(hù)兩個(gè)獨(dú)立故事板(但類似),你可以讓一個(gè)故事板的多個(gè)大小類。首先,設(shè)計(jì)你的故事板與一個(gè)公共接口,然后定制為不同大小類,接口適應(yīng)每個(gè)形式的優(yōu)勢因素。使用Xcode6來測試你的應(yīng)用程序在各種大小類和屏幕尺寸,以確保你的界面適應(yīng)新的尺寸正確。支持新屏幕尺度iPhone6+使用一個(gè)新的視網(wǎng)膜高清顯示很高的DPI屏幕。支持這項(xiàng)決議,iPhone6另外創(chuàng)建一個(gè)uiscreen對象的屏幕尺寸為414x736分和屏幕的規(guī)模3.0(1242x2208像素)。屏幕顯示的內(nèi)容后,UIKit樣品這個(gè)內(nèi)容以適應(yīng)實(shí)際的屏幕尺寸為1080x1920。支持這種渲染行為,包括新的藝術(shù)品為新設(shè)計(jì)的3倍屏幕比例。在Xcode6、資產(chǎn)目錄可以包含圖片1x,2倍,3倍大小;簡單地添加新的圖像資產(chǎn)和iOS將選擇正確的資產(chǎn)當(dāng)運(yùn)行在iPhone6加上。iOS也認(rèn)識到一個(gè)圖像加載行為@3x后綴。在一個(gè)圖形應(yīng)用程序,使用金屬或OpenGLES,內(nèi)容可以很容易地呈現(xiàn)的精確尺寸顯示而不需要額外的采樣階段。這是至關(guān)重要的3d應(yīng)用程序執(zhí)行許多高性能計(jì)算為每個(gè)像素呈現(xiàn)。相反,創(chuàng)建緩沖區(qū)渲染到顯示器的分辨率。一個(gè)uiscreen對象提供了一個(gè)新的屬性(nativeScale)提供本機(jī)屏幕的屏幕比例因子。當(dāng)nativeScale屏幕上的屬性具有相同的值規(guī)模財(cái)產(chǎn),那么呈現(xiàn)像素尺寸是一樣的屏幕的像素尺寸。當(dāng)兩個(gè)值不同,那么您可以期望內(nèi)容取樣之前顯示。如果您正在編寫一個(gè)OpenGLES應(yīng)用,GLKView對象會自動創(chuàng)建其renderbuffer對象基于視圖的大小和它的價(jià)值contentScaleFactor財(cái)產(chǎn)。后,查看已添加到一個(gè)窗口,設(shè)置視圖的contentScaleFactor值存儲在屏幕上的nativeScale屬性,如所示清單1。清單1支持本地規(guī)模GLKView對象-(void)didMoveToWindow{

self.contentScaleFactor=self.window.screen.nativeScale;}金屬的應(yīng)用程序,你自己的視圖類的代碼應(yīng)該類似于代碼中發(fā)現(xiàn)的清單1。此外,只要你的視圖的尺寸發(fā)生變化,和之前問新可拉的金屬層,金屬層的計(jì)算和設(shè)置drawableSize房地產(chǎn)所示清單2。(一個(gè)OpenGLES應(yīng)用程序創(chuàng)建自己的renderbuffers會使用類似的計(jì)算。)清單2調(diào)整大小的金屬層與本機(jī)屏幕CGSizedrawableSize=self.bounds.size;drawableSize.width

*=self.contentScaleFactor;drawableSize.height*=self.contentScaleFactor;metalLayer.drawableSize=drawableSize;看到MetalBasic3D對于一個(gè)工作示例。Xcode模板OpenGLES和金屬也展示這些相同的技術(shù)。額外的框架的變化除了上面描述的重大變化,iOS8包括其他改進(jìn)。API現(xiàn)代化許多框架在iOS采用小接口變化,利用現(xiàn)代objective-c的語法:Getter和setter方法屬性在大多數(shù)類所取代。代碼使用現(xiàn)有的getter和setter方法繼續(xù)使用這種變化。更新初始化方法的返回值instancetype而不是id。在適當(dāng)?shù)牡胤铰暶髦付ǖ某跏蓟?。在大多?shù)情況下,這些變化不需要任何額外的工作在您自己的應(yīng)用程序。不過,你也可以在自己的objective-c代碼實(shí)現(xiàn)這些變化。特別是,您可能想要現(xiàn)代化objective-c代碼交互斯威夫特代碼時(shí)最好的經(jīng)驗(yàn)。有關(guān)更多信息,請參見采用現(xiàn)代objective-c。AV基礎(chǔ)框架AV基礎(chǔ)框架(AVFoundation.framework)允許您捕獲元數(shù)據(jù)隨著時(shí)間的推移在拍攝視頻。任意類型的元數(shù)據(jù)可以嵌入錄像在各種時(shí)間點(diǎn)。例如,您可能在一個(gè)視頻記錄當(dāng)前的物理位置由一個(gè)移動攝像設(shè)備。這個(gè)框架的類的信息,請參閱AV基礎(chǔ)框架引用。AVKit框架AVKit框架(AVKit.framework)之前介紹了OSX在iOS。當(dāng)你需要使用它,而不是媒體播放器框架顯示視頻。CoreAudioKit框架新的CoreAudioKit框架簡化了工作需要為應(yīng)用程序創(chuàng)建的用戶界面利用inter-app音頻。核心形象框架核心形象框架(CoreImage.framework)有以下變化:您可以創(chuàng)建自定義圖像內(nèi)核在iOS。核心圖像探測器可以檢測矩形和QR碼圖像。這個(gè)框架的類的信息,請參閱核心形象參考集合。核心位置的框架框架(核心位置CoreLocation.framework)有以下變化:你可以確定哪些層設(shè)備,如果設(shè)備是在多層建筑。訪問服務(wù)提供的另一個(gè)顯著的位置變化服務(wù)應(yīng)用程序需要用戶位置信息的有趣的地方參觀。這個(gè)框架的類的信息,請參閱核心位置框架參考。核心運(yùn)動框架核心運(yùn)動提供了兩個(gè)新類(CMAltimeter和CMAltitudeData),允許您訪問iPhoneiPhone6+6和晴雨表。這兩個(gè)設(shè)備,你也可以使用CMMotionActivity對象來確定用戶是否騎自行車。基礎(chǔ)框架基礎(chǔ)框架(Foundation.framework)包括以下改進(jìn):的NSFileVersion類提供了訪問過去iCloud文檔的版本。這些版本都存儲在iCloud,但是可以下載請求。的NSURL類支持存儲文檔縮略圖元數(shù)據(jù)。的NSMetadataQuery類可以尋找外部iCloud的文檔應(yīng)用程序打開了。游戲控制器框架游戲控制器框架(GameController.framework)有以下變化:如果控制器是連接到一個(gè)設(shè)備,您現(xiàn)在可以接收設(shè)備運(yùn)動數(shù)據(jù)直接從游戲控制器框架。如果你正在與按鈕輸入和不關(guān)心壓力敏感性,一個(gè)新的處理程序可以調(diào)用你的游戲只有當(dāng)按鈕按下狀態(tài)的變化。GameKit框架GameKit框架(GameKit.framework)有以下變化:特性被添加在iOS7都可以在OSX10.10,使其更容易使用這些功能在一個(gè)跨平臺的游戲。新GKSavedGame類和新方法GKLocalPlayer使它容易保存和恢復(fù)用戶的進(jìn)展。數(shù)據(jù)存儲在iCloud;GameKit必要的工作設(shè)備之間同步文件和iCloud。方法和屬性使用球員現(xiàn)在已經(jīng)棄用標(biāo)識符字符串。相反,使用GKPlayer對象識別的球員。更換添加屬性和方法GKPlayer對象。iAd框架iAd框架(iAd.framework)添加了下列新特性:如果您正在使用AV設(shè)備扮演一個(gè)視頻,你可以玩視頻播放前預(yù)滾動廣告。你可以查找更多的信息廣告為您的應(yīng)用程序的有效性。這個(gè)框架的類的信息,請參閱iAd框架引用。媒體播放器框架兩個(gè)媒體播放器框架(MediaPlayer.framework)類是擴(kuò)展新的元數(shù)據(jù)信息。這個(gè)框架的類的信息,請參閱媒體播放器框架引用。網(wǎng)絡(luò)擴(kuò)展框架使用新的網(wǎng)絡(luò)擴(kuò)展框架(NetworkExtension.framework)配置和控制虛擬私有網(wǎng)絡(luò)(×××)。SpriteKit框架的變化SpriteKit框架(SpriteKit.framework增加了很多新特性:一個(gè)SKShapeNode對象可以指定使用紋理形狀時(shí)撫摸或填滿。的SKSpriteNode,SKShapeNode,SKEmitterNode,SKEffectNode類包括支持自定義渲染。使用SKShader和SKUniform編譯一個(gè)基于OpenGLES2.0的片段著色器類材質(zhì),并提供輸入數(shù)據(jù)。SKSpriteNode對象可以提供照明的信息以便SpriteKit自動生成燈光效果和陰影。添加SKLightNode對象到現(xiàn)場指定的燈,然后定制屬性在這些燈和任何精靈來確定如何點(diǎn)燃現(xiàn)場。的SKFieldNode類提供了物理特效可以適用于一個(gè)場景。例如,產(chǎn)生了磁場,增加阻力的影響,甚至產(chǎn)生隨機(jī)運(yùn)動。所有影響被限制到一個(gè)特定地區(qū)的現(xiàn)場,你可以仔細(xì)調(diào)整效果的強(qiáng)度和速度的影響是削弱了距離。字段節(jié)點(diǎn)很容易下降影響無需搜索整個(gè)列表的物理身體和力量適用于他們。一個(gè)新的SK3DNode類是用來SceneKit現(xiàn)場集成到你的游戲是雪碧。每次SpriteKit呈現(xiàn)你的場景,渲染3d場景結(jié)點(diǎn)生成紋理,然后使用紋理呈現(xiàn)SpriteKit雪碧。創(chuàng)造3d精靈可以幫你避免創(chuàng)建數(shù)十幀動畫產(chǎn)生效果。添加了新的行動,包括支持逆運(yùn)動學(xué)動畫。一個(gè)新系統(tǒng)的約束添加到場景處理。SpriteKit約束適用于物理模擬后,你使用他們指定一組規(guī)則節(jié)點(diǎn)是如何定位和導(dǎo)向。例如,您可以使用一個(gè)場景中的約束指定特定的節(jié)點(diǎn)在現(xiàn)場總是指向另一個(gè)節(jié)點(diǎn)。約束更容易實(shí)現(xiàn)呈現(xiàn)在你的游戲規(guī)則,而無需手動調(diào)整現(xiàn)場事件循環(huán)。一個(gè)場景可以實(shí)現(xiàn)所有的代表,而不是子類化run-loop階段SKScene類。使用一個(gè)委托常常意味著你可以避免需要子類SKScene類。的SKView類提供了更多的調(diào)試信息。你也可以提供更多性能提示渲染器。您可以創(chuàng)建法線貼圖紋理用于照明和物理計(jì)算(或者在你自己的自定義著色器)。使用新的SKMutableTexture類時(shí),您需要創(chuàng)建紋理內(nèi)容的動態(tài)更新。你可以在運(yùn)行時(shí)動態(tài)生成紋理地圖集從紋理的集合。Xcode6還包含了許多新的SpriteKit編輯。直接創(chuàng)建或編輯場景的內(nèi)容,指定的節(jié)點(diǎn)出現(xiàn)在現(xiàn)場以及他們的物理身體和其他特征?,F(xiàn)場被序列化到文件中,可以由你的游戲直接加載。編輯們節(jié)省你

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論