GoogleTV 設計模式

儘管手機Android平臺和GoogleTV平臺內部存在很小的差別,它們在用戶接口方面仍然存在有不少區別。電視使用一般在10英尺左右的距離上,因而電視屏幕也該有滿足10英尺距離查看需要的相應大小。創建一個在這種環境下使用的應用,記住以下基本概念:
  • The10ft environment is traditionally for consuming content.

    • 10英尺環境是一個娛樂環境而不是工作環境;

    • 10英尺環境通常是一個社羣環境而不是個用戶環境;

  • Theviewing experience for a 10ft UI is a mix of computer and TV.

    • TV屏幕應該同時具有電視和電腦的特徵;

    • TV顯示分辨率像電腦,但是受電視特徵的影響;

    • 色彩在電視屏幕上與電腦是不同的.

  • TVshave high-quality sound.

    • 電視通常連接了最好的音響系統;

    • 與電腦不同,用戶期望聲音從電視中發出來,而不會感到是分裂的

  • The10ft UI requires simple and visible navigation tools.

    • 建立從左到右,從上到下的導航面板.

    • 限制對鼠標的需求.

    • 提供視覺反饋.

  • The10ft UI works best with well-established UI patterns based oncontent zones.

    • 區域與設備類型無關.

    • 不同類型的設備一般有特定的區域排列方式.

    • 許多不同的UI都基於區域的概念.

The10ft Environment

創建10英尺環境下的應用,應該牢記以下幾個基本概念:

最基本的概念:電視設備是爲了展現消費內容的,很長時間以來,它一直是一個廣播式系統.Google TV將電視從廣播式轉變到了人機交互式。這些變化對於那些電腦盲的老同志會比較難以接受.而對於那些隨着Internat成長起來的年輕人,將沒有任何問題,他們更期望這種變化。

電視本質上是被動接收的,即使是那些想與之交互的用戶,也不希望操作太難、太複雜,他們不希望和電腦或者智能手機那樣。

此外,GoogleTV 目標是提升傳統放鬆的、羣體的、共享的電視觀看體驗。只有更多的考慮傳統的方法,才能使你的應用與衆不同。

TVDisplays

當你設計應用時,牢記GoogleTV顯示與計算機和移動設備根本上的不同。無論屏幕多大,都只能顯示少量的信息,甚至需要提供少量的UI接口,而通過自動處理完成某些任務,避免與用戶交互。UI設計原則如下:

  1. Use amobile phone as the model for the UI.

現代電視的尺寸具有欺騙性。儘管現代電視通常大於40英寸,但相應地,觀衆坐得離電視屏幕也要比距離電腦顯示器更遠。觀衆的感受是電視屏幕要小於電腦顯示器。爲了模擬這種體驗,在設計UI時可以使用手機作爲模型

  1. Toavoid a cluttered appearance on the screen, provide more blank spacebetween elements on the page.

爲了達到這個目的,要綜合利用設計大內外白間距的方法。對觸摸的UI也是好的建議。

  1. TVsare always in "landscape".

在電視上,水平方向的可用空間要多過垂直方向的。將屏幕上的導航控件放在屏幕的左邊或者右邊,這樣可以爲內容部分節省垂直空間。

High-DefinitionDisplay Resolutions

電視本質上與計算機或者移動設備是不同的。電腦或者移動設備屏幕直接通過可定址的像素來顯示。相反,電視採用10年前的模擬信號的顯示技術來顯示一幅圖片。瞭解這些差別是非常很總要的。

Computerand mobile device display resolution

計算機分辨率一般小於或者等於顯卡分辨率。顯卡決定最大分辨率,而計算機決定像素密度。移動設備的顯示分辨率和像素密度都是固定的。

既然顯示分辨率對計算機來說是簡單的,計算機操作系統能夠根據用戶的參數設定自動處理顯示分辨率和像素密度。

Android設計爲同一應用支持不同類型的移動設備。爲了達到這個目的,Android根據設備屏幕大小和像素密度對應用UI進行放縮適配。另外,你可以提供一個可供選擇的資源來設計UI,以對不同的設備提供最好的用戶體驗。

TVdisplay resolution

電視即使是最現代的電視都有基於掃描線的顯示分辨率。GoogleTV支持三種掃描線分辨率:720p1080i1080p,分別代表720行逐行掃描、1080隔行掃描和1080逐行掃描,後兩種對android來講是等效的。

水平分辨率由電視縱橫比率決定。幾乎所有的電視都採用16:9的縱橫比,因此,對於一個電視來講,1080的顯示分辨率就是1920x 1080.

掃描線的高度和寬度因廠商不同,然而Android將其抽象爲與密度無關的像素。

GoogleTVAndroid應用受益於Android的放縮技術。一般來講,你應該設計1080P的應用,然後允許Android縮小你的應用到720p,因爲縮小要比放大效果更好。爲了達到最好的效果,儘量提供9-patch格式的圖片。Android使用的GoogleTV縮放參數見表1

TVsetting

可定址的屏幕大小

密度標示符

screendensity (in dp)

Displayresolution (in dp)

Screensize identifier

720p

1280x 720 px

tvdpi

213

960x 540

large

1080p

1920x 1080 px

xhdpi

320

960x 540

large

備註:

  • 可定址的屏幕大小就是可視像素數.

  • 密度標示符指示與密度無關的像素數..

  • 使用dpi和顯示矩陣決定的屏幕分辨率,來決定當前顯示的屏幕大小和分辨率.

Android9 Patch Scaled PNGImage:是一種具有9塊獨立區域的PNG圖片,每塊都能夠獨立放縮。這在具有不同分辨率和縱橫比的小屏幕的移動設備上非常方便。AndroidSDK 使用一個draw9patch方法從PNG文件創建9Patch圖片。它是一個3*3的方格圖片.4個角不進行放縮.其餘幾塊進行放縮。

Overscan

另一個複雜問題就是過掃描。由於歷史原因,TV生產廠商必須在正常顯示屏之外預留一個邊,這部分可以進行顯示但是沒有用來顯示電視信號。這部分區域就是過掃描區。Android應用也不能在過掃描區顯示。

不幸的是,過掃描區的數量隨着廠商而變化不定,因此UI周圍的邊的大小也是不定的。如果你爲有一個大邊TV設計的UI,你可能不會注意到UITV邊之間的過掃描邊。如果你在一個幾乎沒有過掃描區的電視上運行你的應用,UI幾乎也沒有邊界,它上面的元素就會混淆難讀。

爲了解決這個問題,爲我們UI額外提供10%的邊界,並且使用非絕對位置表示的佈局。如圖1所示:

Color

電視屏相對電腦顯示器具有更高的對比度和飽和度。爲了解決這個問題,當採用單色工作時,遵照以下幾個原則。

1、少用純白(#FFFFFF)。在電視顯示中,純白能夠造成閃亮或者圖像拖毛。應該用#F1F1F1(hex) or 240/240/240(RGB).來代替。

2、避免亮白、紅色、橙色,因爲他們能夠引起圖像扭曲變形。

3、注意電視擁有的不同的顯示模式,包含標準的,逼真的、影院的、遊戲的等等。要在所有模式下測試你的應用程序。

4、避免使用大的生成的傾斜度,這容易造成條帶。

5、如果可能,儘量在具有較差顯示特性的機器上測試你的應用。



1Screen resolutions and dimensions

Text

TV來說,應當避免使用過輕的字體或者那些具有過窄和過寬筆畫的字體,而使用沒有襯線的簡單字體,並使用抗鋸齒來提高易讀性。目前,GoogleTV僅支持DroidSans and DroidSerif兩大字體家族,可是你可以使用嵌入字體來創建自定義的外觀特性。然而,這種嵌入字體的方式會影響系統性能。

這裏列舉了一些提供文字可讀性的方法:

  1. 限制每段不超過90個單詞;

  2. 將文本分段放在不同的小塊中,讓用戶可以快速看完。

  3. 保持每行5-7個單詞.不要少於3個或者多於12.

  4. 在電視上,黑底白字相對白底黑字更容易閱讀

  5. 使用Android標準字體大小.例如,標準的小字體大小爲14sp,1080p的屏幕上會佔用28個點;

  6. 在屏幕上寫字要比打印使用更大的垂直行間距。

Soundand the UI

使用 GoogleTV的電視機常常都連接了室內最好的音響系統,在電視上,聲音聽起來不像電腦那樣是分裂的。因此,記住在UI中使用聲音的一些方法:

  1. 使用適合生活房間環境的聲音;

  2. 默認設置爲較低的音量;

  3. 假定你的用戶會使用你的應用看電視或者聽音樂;提供簡單的方法來降低音量;不要完全依賴音量控制檯來交互,適度的使用控制條;

  4. Android具有音頻焦點的概念,意思就是允許應用請求獨佔音頻播放器。如果你的應用主功能依賴音頻播放,你應該請求獨佔音頻焦點;如果你的應用在背景服務中播放音樂,你應該實現AudioFocusChangeListener接口,不要妨礙其他應用申請音頻焦點。

NavigationDesign

Google TV設備總是包含一個鍵盤和一個控制指針的定點設備。許多用戶在看電視時都希望將其放在屏幕下面。這兩個可能會集成在一個簡單的物理設備中,這個設備也可能包含一個鼠標控制器。鍵盤顯然是爲了文本輸入提供的。定點設備卻是D-Pad的變種,它用來控制指針的位置或者高亮顯示一個UI元素。在鍵盤或者定點設備或者兩者都用附加按鈕來提供傳統的遠程控制功能,比如電源控制、回放、等等。如果有鼠標,他能控制鼠標的位置,並提供按鈕點擊鼠標下面的UI元素。相反應該記住TV傳統上是一個廣播系統而不是一個交互會話系統。用戶可能沒有太多使用D-Pad和鼠標的體驗。即使是有經驗的計算機用戶也會發現在電視上使用鼠標也是困難的。

這裏是一些在GoogleTVAndroid應用上設計UI導航面板的指導方針:

  1. 使用D-Pad導航版代替鼠標導航。用戶可能更熟悉這種類型的導航應用在TV遠程控制上。

  2. 如果你選擇了鼠標導航,要使用非常大的選擇界面,使用戶可以很輕鬆的定位和點擊。

  3. 避免複雜的和要求精確的鼠標導航,不要使用拖拉和彈出式菜單,這在電視應用環境下很難控制。

  4. 對於導航,要提供非常明顯的反饋信息。當一個選擇界面獲取焦點後,應該將其展開,或者高亮顯示。對於正反動作要使用過渡和移動來提供可視化的提示。例如,用戶執行了一個動作,導致從右側劃入一個新頁面,他們可能直接的想到通過D-Pad的左鍵可以返回以前的界面【理念差異】。

你的目標就是提供導航設計方案,用戶可以快速學習預測如何移動來進行操作。

再一次切記:TV既不是電腦也不是移動設備。他沒有觸摸屏,也很難使用鼠標來控制。爲了加深你對電視導航面板的理解,試着不用鼠標來操作你的計算機應用程序或者運行在模擬器中的Android應用程序。直覺感覺交互界面怎麼樣?如何改進?

D-padnavigation

D-pad控制器限制了只有上下左右四種移動方式,而通過中心鍵來選擇指定項。用戶需要D-pad交互簡單而快捷。記住,用戶使用導航一般都在一定距離以外,可能還是黑暗的環境。

當你爲D-pad設計導航面板時,遵循一些指導方針:

  1. 確保箭頭鍵能導航到屏幕上的全部可視控件上;

  2. 如果你使用箭頭鍵來滑動列表,確保用戶能夠選擇列表項,並且,在選中列表項狀態下,仍可以滑動列表;

  3. 如果你的應用支持多選,確保選中項必須是清晰可見的。

  4. 確保D-pad全部導航項能夠獲得“選中”“獲得焦點”“選中並獲得焦點”三種狀態。

Mousenavigation

在電視屏幕上,鼠標指示箭頭小而遠。鼠標的控制也非常困難,因爲鼠標本身常是一個pad或者ball而不是一個傳統的鼠標精靈。爲了幫助你你的用戶使用鼠標,遵循以下建議:

  1. 放大每一個要被鼠標點擊的UI控件,保證提供充足的空間;

  2. 當鼠標移動UI控件上時,在控件上增加一個盤旋狀態進行標識。

  3. 使用箭頭指示,暗示用戶屏幕外有可以訪問的內容。將箭頭作爲控件,當用戶點擊後轉到頁面外內容。

Navigationassistance

10英尺環境下的導航對大部分用戶來說都是新鮮的。因此需要使用幫助按鈕或者操作條按鈕爲用戶提供文本幫助,可以包括以下幾個方面:

1D-pad指示鍵:它們能切換頁面嗎?能用它們打開上下文菜單或者導航菜單嗎?

2、返回鍵:它能夠回到前一界面嗎?它能夠取消一個操作碼?它能夠關閉一個彈出式菜單嗎?

3、多媒體鍵:播放、暫停能幹什麼?如何快進和快退?

4、其他鍵:有取消鍵和關閉彈出菜單鍵嗎?例如,ESC能關閉彈出菜單嗎?

當用戶首次運行你的應用程序時,你也可能想自動顯示幫助窗口。

Verticalscrolling

垂直頁面滾動對於桌面瀏覽器來說是基本的,在電視中卻可能沒有那麼吸引人.滾動可能生澀緩慢,由於用戶不知道滾動的持續性,重要的信息可能被隱藏在屏幕之外.相反,使用水平佈局,在頁面之間提供可視的切換按鈕。如果你使用垂直滾動,限制它只用在頁面中心的細節區域,而讓你的左側的導航欄固定下來。此外,保持一個易於理解的上下文環境,這將會有更好的直觀感覺體驗。

Categorynavigation

對於類別如菜單或者tab,一般使用屏幕的左側。在電視上,水平方向空間是豐富的,而垂直方向的空間卻相當寶貴。儘量保持屏幕上的類別選項一直顯示,爲了做到這點,你可能需要減少類別數目。如果你正在把一個已經存在的電話應用移植到TV上,考慮重構或者至少測試那些複雜的嵌套子類別的導航。

Selection

在電視上,定位用戶選項是不精確的,爲了幫助用戶選擇,遵循以下指導方針:

  1. 高亮顯示選中項,當用戶選擇符指針落在它上面時(比如盤旋符);

  2. 使選中的控件變大,並在Text標籤周圍提供附加的信息;

  3. 不用使用固有的小控件如窗口角上的關閉按鈕。它們很難被看見或者很難選中,或者兼而有之。

  4. 避免使用鼠標點擊來關閉彈出式對話框。例如,PC應用經常提供點擊其他地方的方式來關閉窗口,這在10英尺外的環境下是不明顯的。相反,應該提供個直接的控制按鈕來關閉對話框,確保D-pad能夠訪問它。

  5. 不要求用戶通過選擇來激活主控制按鈕。讓主控制或者默認控制激活,高亮顯示指示這些;

  6. 如果窗口或者對話框的部分內容要求滾動,讓他獲得焦點或者,允許它在沒焦點的情況下滾動。在滾動前要求用戶點擊一個元素是麻煩而令人討厭的。

Context,selection, and focus

應用程序的當前狀態包含:上下文、選中項、焦點。上下文通常是一組分類,而選中項是用戶選中的一個分類。焦點是在指針下的控件或者元素。它們應該有不同的高亮方式,高亮方案應該與應用程序相協調。

比如:如果用戶正在全屏看電影,應用程序應該提供一排與上下文相關的Tab,它們能夠提供不同的分類,如所有電影,最新發行、流行、編輯面板等等。如果用戶選擇其中一項,該Tab的選中狀態應該與正在移動的焦點視覺感覺不同,以指示當前導航位置。如圖2所示:

Figure2. Selection and focus

對於GoogleTV應用來說,D-pad聚集狀態等同於鼠標旋轉狀態。這是用戶發現應用程序狀態的主要方式,它可以幫助用戶預測如何移動焦點或進行選擇。

Focusand focus prediction

就像踩着石頭跨越溪流一樣,用戶考慮的是如何在可以聚焦的UI元素間移動,並避開那些不能聚焦的。一種可以輔助用戶的方法就是,給於聚焦的元素與衆不同的的視覺處理,如爲可聚集的元素加上輪廓框如圖2。區別可聚集和不可聚集元素,可以幫助用戶瞭解你的UI。另外一種幫助用戶的方式是將元素網格式排列,如圖3.

Figure3. Grid pattern for UI navigation

對於D-pad的上下左右控制,網格是最直觀的映射。如果你不使用網格,你的界面元素可能會按照對角線佈局、或者在不同的基線上,或者在不同的垂直中心上。這可能會強制用戶重複進行上下、左右的操作切換,或者讓他們對如何移動感到迷惑。一些列表滾動元素可能不符合標準的網格佈局,如圖4。在這種情況下,應該將初始焦點儘可能地安排在離網格最近的地方。

Figure4. Scrolling alignment and grid layout

Visualindicators

在你的UI中,爲可選擇的和可導航的項目添加指示或者高亮顯示是個很好的習慣。這被認爲是值得的affordances。期望用戶研究你的界面來找到那些是可選擇,哪些不是的方法是不可取的,假定你的UI是直觀的也一樣不可取。你應該通過仔細標註和註釋來贏得用戶的認可和忠心。

Transitions

在你的應用中使用過渡既能教育用戶,也能把他搞暈。確保你的應用中使用過渡來傳遞有用信息,而不簡單提供娛樂目的。建議如下:

  1. 避免重新加載整個頁面,因爲這能導致大的用戶感受到的反應時間或者延遲。

  2. 對於一個隻影響Fragment的動作,保持過渡效果只在Fragment中。

  3. 讓進度條提供有意義的信息。動畫應該指出已經完成的進度,還有多少工作要做。

  4. 不要爲網格中的任意元素添加“加載”動畫。這樣做的結果,就是UI設計混亂,難看。

UserInterface Design

設計UI原則:

  1. 保持設計協調一致;

  2. 保持元素行爲一致;.

  3. 保持所有重要的動作和選項可見,包括查找、設置、返回等。在10英尺的電視應用環境中,不可見的元素會被忘掉,即使他們在屏幕以外,或者在遠程遙控器上。

爲了幫助你,Android提供大量的標準UI控件,以及提供多種不同方式來定製具有一致的風格的UI控件。

UIsacross devices

你有個在移動設備上運行的應用,現在你想把它移植到10英尺的環境中。怎樣將1英尺UI轉變到10英尺的UI?記住,最重要的是更大的不總是更好。平板要比智能手機好,計算機比平板好,但是電視比電腦好嗎?

Figure5: Comparative screen sizes

你可能認爲42寸的屏幕是最有能力的,但是事實並非如此。智能手機通常比電視具有更強的處理能力。來自電視的高清視頻和音頻信號,是預先渲染的。因此全部需要的僅是一個高帶寬的到廣播源的連接。換句話說,大部分電視信號的處理都集中在廣播端而不是在電視機端。爲了適應這種情況,設計應用應儘可能少用用戶交互。你的程序爲用戶做得越多,越好。

UIZones and Patterns

最早的設計好的TVUI的方法是使用區域和模式的結構。在它們的綜合作用下,強調出一種由UI元素視覺語彙建立起的簡潔明晰的體驗。

Zones

區域也是GoogleTV 瀏覽內容的基礎部分。每一個區域對應一個AndroidActivity組件。對GoogleTV,區域採用左右分佈層次來代替手機和計算機上的上下分佈層次。這反映了TV水平屏幕特徵,這也便於實現前面提到的簡單導航。

Figure6. Application zones

TV屏包含3個區域,如圖6,從左到右分了3個等級。你可以調整他們的大小來適應你應用程序的需要,或者你可以簡單實用默認大小。由於全局區在整個應用生命週期內一致存在,因此不能讓它佔用太多的屏幕空間。相反,細節區包含用戶想看的更多信息,因此應該給予細節區儘可能大的空間。最後,給予上下文區適中的大小,能夠很好的適應當前顯示的選擇需要,也不要限制細節的顯示。

Zoneexample

Figure7 是分區設計的例子,and figure8 顯示區域本身.

Figure7. Example application.

Figure8. Zones in the example application



GlobalZone

全局區如圖8在屏幕的最左邊,這個區保存了應用程序最頂層的全局項。他給用戶提供了任何時候都可能想快速訪問的操作。它也包含你應用程序的所有類別、以及logo。全局區的選擇變化會改變右邊的上下文區和細節區的內容,依賴於你的應用程序設計層次的深度。

ContextualZone

上下文區位於全局區的右側,基於上下文的細節或者選項會在這裏顯示。除了展示上下文細節,上下文區域也包含次級模式,如分頁,菜單、過濾器等,用戶可在中間層執行具體的操作。這個區域是可選的。

DetailZone

細節區在最右邊。他通常是最大的區域,負責顯示你應用程序的內容。如上下文區一樣,這個區域也可以包含不同的次級模式,包括內容架子、情節瀏覽器、列表等。下圖展示了TV、平板、手機的分區和模式的例子:

Figure9. TV Zones

Figure10. TV Patterns

Figure11. Tablet Zones

Figure12. Tablet Patterns

Figure13. Phone zones Figure 14. Phone patterns

Patterns(Fragments)

模式是區域的次級結構,用來包含UI空間和顯示內容。通常情況下,你將一個獨立的模式實現爲一個Android片段。Android提供UI佈局與窗口小部件,協助你實現許多應用程序的基本需求。圖15顯示了一些GoogleTV區域系統中的模式:

Figure15. Patterns and zones

Android提供的模式模板包含左側標籤欄、菜單、列表、過濾器、分頁標記等等

GoogleTV中的模式與其它設備上爲人熟知的模式表現完全一致.這樣你就可複用他們。如果在手機應用上有一個列表,可以將同一個列表放到GoogleTVUI中適合的區域中.這將簡化並加速應用程序的移植。甚至更好的,Android默認放大模式適應10英尺環境.對於那些熟悉你的應用程序的用戶,這個模式仍然容易識別。

BasicPatterns

ContentShelf

ContentGrid

ContentList

CascadingContent List

Extendeddetails

Sub-sectiontabs

Sortingand Filtering

你常常想爲用戶提供某種方法來對UI中顯示的列表進行排序和過濾。在計算機或者觸摸屏上,你通常在列表的左上方或者屏幕的左側提供下拉式菜單選項.在十英尺環境中考慮如何實現這個UI時,不要忘了方向鍵導航的侷限。在圖16中,橙色標記的是控制排序和過濾其下方表格的模式。注意,在此最小化狀態下,標籤和被選中項目都清晰地傳達給了用戶。

Figure16. Sort and filter pattern

當用戶進入這個區域,會展開顯示所有可用選項,同時會顯示當前選中選項。如圖17.

Figure17. Sort and filter pattern, expanded.

如果你的應用既包含排序又包含過濾,可能你不只需要一個選項列表,圖1819展示了在最小化和展開狀態下既包含排序又包含過濾的多選項設置的版本。

Figure18. Multiple option lists, minimized.

Figure19. Multiple option lists, expanded.

注意,展開視圖演示的是選擇選項和將選項標記爲高亮的多種方式。

標籤A之下的選項在被選中時,字體會加粗。標籤B,如果全部選項都被選中,會顯示文本“全部選項”。標籤C使用複選框來指示哪個選項被選中。標籤D顯示的則是沒有任何選項被選中時的效果。

如果可能的話,當用戶選擇選項時,應該更新列表。這對用戶來說這是有益的回饋,也讓應用程序的反應顯得更爲靈敏。同時不必再使用一個特定的“應用篩選”按鈕,也避免了全屏刷新。記住,當用戶返回至左側欄位,或向表格下方導航時,應該再次收起選項列表,並顯示當前被選中的項目。

D-padinteraction traps

方向導航與這些UI模式的交互,更凸顯出左右層級排列的優勢。在更好的綠色樣例(圖20)中,劃分了三個區域:全局、列表和確認,構成一個上下文環境。當用戶從“分類”到“項目”到“確認”逐步地收窄選擇時,他們從左到右移動焦點。任何區域內的導航都被限制在上下方向。這樣很容易地就可以從長列表中選擇項目並確認選擇

Figure20. A desirable zone and pattern organization.

在不那麼令人期待的紅色的樣例中(圖21),層級不變,但變爲垂直排列。用戶使用“上”、“下”在區域間導航。區域內的導航則並不一致,在頂部和底部區域內是左右導航,在中間的區域內卻是上下導航。

在觸屏設備上,這個佈局相對比較容易掌控,因爲用戶能擡起手指,在區域間跳躍點擊。然而在使用方向鍵導航的設備上,用戶不能在區域間跳躍操作。如果用戶想要從頂部的全局區域到達底部的確認按鈕,他們必須首先滾動通過中間區域中列表的每一項。如果列表包含了50個項目的話,這將是一項巨大的負擔!使用左右層級排列來防範這個陷阱。

Figure21. Undesirable zone and pattern layout.

UIPerformance

無數研究表明:用戶更喜歡運行快速的應用,因此,你應該做到可視化界面和性能的平衡。另外,TV設備運行也沒有工作站速度快。在你使用大量的複雜應用動畫之前,應該考慮並測試對用戶滿意度的影響。用戶纔是你的應用是否運行良好的最終評判員。

開發應用的時候,應在幾個方面測試你的應用性能,每一個具體操作要花費的時間,Android測試工具創建的對象實例數目等。切記,這些對於最終用戶是不重要的,他們會採用不同的標準來評判。

例如,用戶可能基於操作的流暢性和快捷性、對輸入響應的速度來評判。如果你的應用拖慢了GoogleTV其他部分的應用,他們是不會喜歡的。這些反應是用戶對你的程序最直接的感受,最直接的感受纔是最重要的指標。

獲取最佳的性能感受與獲得絕對的性能方式不同。確保你的應用永遠不要執行那些非常耗時的代碼,避免不能快速刷屏和獲取用戶輸入。在某些情況下,將一個任務劃分成幾個部分,使得每一部分可以快速完成刷屏。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章