Apple TV app 開(kāi)發(fā)
tvOS由蘋(píng)果公司在iOS的基礎(chǔ)上開(kāi)發(fā),作為第4代Apple TV的Apple TV軟件操作系統(tǒng)的繼任者推出
如果您正在考慮通過(guò)視頻內(nèi)容獲利的方法,開(kāi)發(fā)電視應(yīng)用程序是首選策略。OTT 電視平臺(tái)的多樣性為擴(kuò)大您的受眾、收入和前景提供了巨大的機(jī)會(huì)。通過(guò)多個(gè)平臺(tái)和設(shè)備流式傳輸您的內(nèi)容可以成倍增加您的業(yè)務(wù)獲得重大起飛的機(jī)會(huì)。
在本文中,我們將重點(diǎn)介紹Apple TV應(yīng)用程序開(kāi)發(fā)的細(xì)節(jié)。
Apple TV 在全球 OTT 市場(chǎng)
蘋(píng)果電視 是十大流媒體平臺(tái)之一。盡管機(jī)頂盒與三星,Roku,亞馬遜Fire等有一些追趕,但Apple TV的季度環(huán)比增長(zhǎng)率高達(dá)10%。

深入了解電視操作系統(tǒng)
tvOS由蘋(píng)果公司在iOS的基礎(chǔ)上開(kāi)發(fā),作為第4代Apple TV的Apple TV軟件操作系統(tǒng)的繼任者推出。
編碼語(yǔ)言、SDK 和框架
要?jiǎng)?chuàng)建 Apple TV 應(yīng)用程序,開(kāi)發(fā)人員需要掌握可靠的技術(shù)堆棧。此外,一些曾經(jīng)廣泛用于Apple TV開(kāi)發(fā)的技術(shù)現(xiàn)在正在被棄用,讓位于新的繼任者。例如,由于 Objective-C 沒(méi)有更新,Swift 正在成為開(kāi)發(fā)人員在 iOS 應(yīng)用程序的首選語(yǔ)言,這意味著為了確保高效的應(yīng)用程序維護(hù)和新功能開(kāi)發(fā),您的舊版 Objective-C 代碼需要遷移到 Swift。
除了Objective-C和Swift之外,開(kāi)發(fā)人員還需要了解JavaScript,TVML等語(yǔ)言。至于框架,最常用的是UIKit,SwiftUI,TVMLKit,F(xiàn)ocusEngine,F(xiàn)oundation,TVMLKit JS。該列表并不詳盡,其他技術(shù)包括CocoaPods,Swift Package Manager等。
支持的格式
操作系統(tǒng)采用 HTTP 實(shí)時(shí)流 (HLS) 技術(shù)作為其主要流協(xié)議格式,通過(guò)將內(nèi)容播放調(diào)整到當(dāng)前網(wǎng)絡(luò)狀態(tài)來(lái)確保動(dòng)態(tài)視頻交付。tvOS支持FairPlay流媒體DRM系統(tǒng),以提供安全保護(hù)的視頻內(nèi)容。
用戶體驗(yàn)
簡(jiǎn)約的設(shè)計(jì)和出色的用戶體驗(yàn)一直是蘋(píng)果產(chǎn)品的標(biāo)志,Apple TV 也不例外。為了給觀眾提供最佳的后仰體驗(yàn),蘋(píng)果推出了Siri Remote——一種結(jié)合了觸摸板、按鈕和語(yǔ)音控制功能的時(shí)尚遙控器。在那些沒(méi)有Siri遙控器的國(guó)家/地區(qū),Apple TV也由簡(jiǎn)約的6按鈕遙控器控制。
但考慮到大屏幕和遙控器,針對(duì) tvOS 進(jìn)行設(shè)計(jì)需要一系列獨(dú)特的考慮因素和限制:
基于焦點(diǎn)的導(dǎo)航
在 iOS 上,用戶通常通過(guò)設(shè)備的觸摸屏與應(yīng)用交互。但在 tvOS 上,用戶交互是基于在屏幕元素之間移動(dòng)焦點(diǎn)。當(dāng)這些元素在用戶界面上完全對(duì)齊時(shí),對(duì)焦引擎(控制對(duì)焦移動(dòng)的系統(tǒng))會(huì)自動(dòng)檢測(cè)下一個(gè)可聚焦元素,并將焦點(diǎn)向左或向右、向上和向下移動(dòng)。
當(dāng)用戶需要關(guān)注彼此對(duì)角線的區(qū)域時(shí),事情變得困難。為了解決這個(gè)問(wèn)題,開(kāi)發(fā)人員使用 UIFocusGuide(UILayoutGuide 的一個(gè)子類)使非視圖區(qū)域可聚焦,從而將焦點(diǎn)引擎重定向到需要的位置。


不支持WebViews
為了控制用戶體驗(yàn),蘋(píng)果已經(jīng)從tvOS中刪除了WebViews。一方面,全高清和4K屏幕不能很好地呈現(xiàn)Web內(nèi)容,沒(méi)有WebView支持意味著更好的安全性,因?yàn)闊o(wú)法使用可利用的瀏覽器包裝器顯示任何內(nèi)容。另一方面,開(kāi)發(fā)人員在開(kāi)發(fā)Apple TV應(yīng)用程序時(shí)面臨著新的挑戰(zhàn),因?yàn)閃ebViews廣泛用于大多數(shù)與Web相關(guān)的任務(wù)。
Apple提供的替代方案是TVMLKit JS框架,它為開(kāi)發(fā)人員提供了在Apple TV標(biāo)記語(yǔ)言(TVML)的幫助下創(chuàng)建客戶端 - 服務(wù)器應(yīng)用程序的方法。將應(yīng)用內(nèi)容保留在服務(wù)器上的好處是可以進(jìn)行更新并利用動(dòng)態(tài)內(nèi)容,而無(wú)需在設(shè)備本身上更新應(yīng)用。

重用 iOS 代碼來(lái)構(gòu)建 Apple TV 應(yīng)用
“得益于 iOS app 正確設(shè)計(jì)的邏輯和 UI 表示層,我們?cè)O(shè)法重用了 70% 的 iOS 代碼,并顯著加快了上市時(shí)間,在短短 6 個(gè)月內(nèi)推出了 Apple TV app 的第一個(gè)版本?!?/span>
— 伊戈?duì)枺琲OS 開(kāi)發(fā)者
如果正確處理,可以在iOS和tvOS之間共享代碼庫(kù)。正如我們已經(jīng)提到的,在構(gòu)建Apple TV應(yīng)用程序時(shí),應(yīng)特別注意UI設(shè)計(jì),因?yàn)橛脩粢圆煌姆绞脚c電視交互,因此許多導(dǎo)航元素需要適應(yīng)電視導(dǎo)航的具體情況。其他限制(如沒(méi)有網(wǎng)絡(luò)瀏覽器)也需要考慮。例如,如果您的 iOS 應(yīng)用程序利用 OAuth 進(jìn)行身份驗(yàn)證并將用戶重定向到網(wǎng)頁(yè),您將需要設(shè)計(jì)一個(gè)不同的流程,例如,使用觀眾可以使用智能手機(jī)掃描的二維碼。
使用TestFlight進(jìn)行tvOS應(yīng)用程序測(cè)試
當(dāng)應(yīng)用程序準(zhǔn)備就緒時(shí),測(cè)試斗爭(zhēng)就開(kāi)始了。為了改善開(kāi)發(fā)者體驗(yàn),蘋(píng)果推出了TestFlight應(yīng)用程序。該工具通過(guò)邀請(qǐng)多達(dá) 100 名內(nèi)部測(cè)試人員和 10,000 名外部測(cè)試人員,只需共享一個(gè)鏈接即可收集有價(jià)值的見(jiàn)解并提供高質(zhì)量的最終產(chǎn)品,從而輕松方便地對(duì) tvOS 應(yīng)用程序進(jìn)行 beta 測(cè)試。
tvOS 應(yīng)用提交
在 App Store 中呈現(xiàn)給最終用戶之前,所有 Apple 應(yīng)用程序都會(huì)根據(jù)修訂技術(shù)、UI/UX 和內(nèi)容參數(shù)進(jìn)行嚴(yán)格的質(zhì)量驗(yàn)證過(guò)程。要滿足提交要求并獲得 Apple 認(rèn)證,請(qǐng)確保:
使用 Xcode 14 構(gòu)建您的 Apple TV app,以符合 iOS 和 tvOS 框架和庫(kù)
針對(duì) tvOS 16 進(jìn)行優(yōu)化,使客戶能夠使用最新版本更新并最大程度地享受您的內(nèi)容
使用 Testflight 測(cè)試您的應(yīng)用程序
提交應(yīng)用名稱、圖標(biāo)、描述、最多 100 個(gè)字符的關(guān)鍵字集,并添加最多 10 張屏幕截圖,揭示應(yīng)用的本質(zhì)
以 30 秒長(zhǎng)的簡(jiǎn)短說(shuō)明性視頻的形式創(chuàng)建應(yīng)用程序預(yù)覽
添加應(yīng)用隱私信息
使用推薦的應(yīng)用推廣渠道
Apple TV app 開(kāi)發(fā)要點(diǎn)
憑借其Apple TV媒體播放器在市場(chǎng)上站穩(wěn)腳跟后,Apple繼續(xù)推動(dòng)一流的觀看體驗(yàn)。2022 年 4 月,蘋(píng)果推出了新的 Apple TV <>K——這是一款?yuàn)蕵?lè)巨頭,為家中最大的屏幕帶來(lái)了最佳的視頻和音頻功能。
因此,許多內(nèi)容所有者和分銷商選擇使用 Apple TV 應(yīng)用程序擴(kuò)展其視頻流產(chǎn)品并利用更大的客戶群是有道理的。對(duì)于那些已經(jīng)擁有iOS應(yīng)用程序的人來(lái)說(shuō),開(kāi)發(fā)Apple TV應(yīng)用程序變得更加合理,因?yàn)榇a重用簡(jiǎn)化并加快了整個(gè)開(kāi)發(fā)過(guò)程。然而,在為蘋(píng)果生態(tài)系統(tǒng)構(gòu)建新產(chǎn)品和服務(wù)時(shí),蘋(píng)果有嚴(yán)格的質(zhì)量標(biāo)準(zhǔn)和規(guī)則。為了創(chuàng)建一個(gè)成功的Apple TV應(yīng)用程序,需要一種深思熟慮的方法,該方法將考慮到tvOS開(kāi)發(fā)細(xì)節(jié),如UI設(shè)計(jì),導(dǎo)航以及與Apple TV上的Web服務(wù)的交互。
