天天看點

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

本文譯自蘋果官方人機界面指南 iOS Human Interface Guidelines ,由騰訊ISUX設計師翻譯整理,非發文者一人之作。

文章索引

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-0">3.1 3D觸摸(3D Touch)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-1">3.1.1 輕壓和重壓(Peek and Pop)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-2">3.1.2 主螢幕快捷操作(Home Screen Quick Actions)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-3">3.2 Live Photos</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-4">3.3 錢包(Wallet)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-5">3.4 蘋果的移動支付平台(Apple Pay)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-6">3.5 研究型應用程式(Research Apps)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-7">3.6  應用擴充(App Extensions)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-8">3.6.1 今天部件(Today Widgets)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-9">3.6.2 分享和動作擴充(Share and Action Extensions)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-10">3.6.3 圖檔編輯擴充(Photo Editing Extensions)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-11">3.6.4 文檔提供者擴充(Document Provider Extensions)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-12">3.6.5 自定義輸入法(Custom Keyboards)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-13">3.7  HomeKit</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-14">3.8 多任務處理(Multitasking)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-15">3.9 通知(Notifications)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-16">3.10 社交媒體(Social Media)</a>

<a target="_blank" href="http://isux.tencent.com/ios9-guideline-ch3-1.html#title-17">3.11 iCloud</a>

譯者注:本文譯自蘋果官方人機界面指南 iOS Human Interface Guidelines (2015年10 月21日),由騰訊ISUX設計師翻譯整理,非發文者一人之作。譯文首發于ISUX部落格,如在閱讀過程中發現錯誤與疏漏之處,歡迎不吝指出。後續章節會陸續更新,敬請期待。

3.1 3D觸摸(3D Touch)

3.1.1 輕壓和重壓(Peek and Pop)

輕壓讓使用者可以在不離開他們目前環境的情況下預覽一個項和執行相關操作。支援輕壓的該項會在輕壓後給出一個小矩形視圖作為回報。

在Safari中的一個輕壓視圖

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

在Safari輕壓中的快速操作

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

輕壓(Peek):

當使用者按壓在一個支援輕壓的項上時出現輕壓,使用者手指擡起後會消失

當使用者在輕壓視圖下再更加重一點的按壓稱之為重壓,重壓可以檢視該項的詳細視圖

當使用者在輕壓視圖中向上滑動,可以提供與該項相關的快速操作

當使用者輕輕按壓在螢幕,支援輕壓的這個項會展示一個你提供的矩形視圖,示意可以進行下一步互動操作。那個視圖應該夠大,這樣才能讓使用者手指不會混淆内容,這個視圖應該足夠細節,這樣可以讓使用者選擇是否去更加重一點按壓進而轉換到輕壓視圖。

重要

你在應用中始終如一提供輕壓和重壓的體驗是至關重要的。如果你在有些地方支援輕壓和重壓,在某些地方不支援,使用者有可能認為你的應用或者他們的裝置出現了問題。

使用輕壓去為該項提供一個生動的,内容豐富的預覽。當輕壓能夠給使用者提供關于該項的足夠資訊,進而幫助他們擴充目前的任務,這樣做是最好的。例如,在使用者決定好是在Safari中打開資訊中的網頁還是分享這個連結給朋友之前,使用者可以使用輕壓預覽資訊中URL的頁面。在表單視圖中,輕壓可以給使用者提供一個行項的詳細内容。

為每個輕壓提供重壓。雖然一個輕壓可以提供給使用者所需要的大部分資訊,但是你應該可以讓使用者過渡到重壓,進而讓使用者放開目前正在進行的任務,轉移專注力到該項上來。重壓的内容應該與使用者點選該項後的内容一緻。

在輕壓操作裡,避免展現類似按鈕的界面元素。如果使用者擡起手指去點選像按鈕的元素,輕壓會消失。

如果可能,提供輕壓快捷操作。 在輕壓裡,使用者可以向上滑動去顯示該項的相關操作。例如,Mail裡的輕壓快捷操作包括回複全部,轉發和删除資訊。并不是每個輕壓都需要快捷操作,但是如果你已經為該項提供定制的點選并長按的操作,那麼最好在輕壓裡提供相同的操作進而替代點選并長按操作。(注意在網頁視圖中,輕壓快速操作是自動提供的。)

不要将輕壓作為唯一開啟該項的指定操作的方式。不是每一個裝置都支援輕壓和重壓,一些使用者可能選擇關掉3D Touch, 是以在你的應用中去尋找其他方式實作輕壓的功能是非常重要的。當你的應用在較舊的裝置上運作時,可以把輕壓的快捷操作映射到一個視圖裡,讓使用者通過點選并長按獲得。

3.1.2 主螢幕快捷操作(Home Screen Quick Actions)

主螢幕快捷操作可以在主螢幕給使用者呈現友善的、有用的、應用特定的操作。

Camara的主螢幕快捷操作

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

Mail的主螢幕快捷操作

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

主螢幕快捷操作:

當使用者在主螢幕采用比點選且長按更重的按壓,按壓在應用圖檔上時,出現螢幕快捷操作

它會顯示一個你提供的短标題,一個圖示和可選的副标題

它不支援其他定制的内容

  它可以随着你應用的更新,更新顯示的資訊

使用主螢幕快捷操作去開啟引人注目的、高價值的任務。例如,Maps可以讓使用者不需要打開Maps,通過在目前位置附近搜尋就可以獲得回家的方向。一個應用至少需要把一個有用的任務放在主螢幕快捷操作裡;你可以提供最多四個快捷操作。

避免使用主螢幕快捷操作去減少應用裡導航的内容。如果使用者通路你應用的重要區域非常困難和耗時,那麼首先去修改你的應用的導航,這樣做是可以讓所有使用者都獲益的。接着,可以去為有用的深層次連結提供主螢幕快捷操作,進而開啟這些有用的、創造性的任務。

為主屏快捷操作提供一個簡潔的标題(可有副标題)和一個模闆的圖示。标題應該直接傳達這個操作的結果;例如,“回家的方向”,“建立聯系人”,和“建立資訊”。你也可以提供一個副标題給使用者更多上下文資訊。例如,Mail使用一個副标題在主屏快捷操作的重要位置去告訴使用者有未讀資訊。 不要把你的應用名字或者無關的資訊放在标題和副标題裡,同時要考慮到使用本地化的用語。

保持标題的簡潔不會被切斷進而幫助使用者快速了解操作是非常重要的。如果你提供的副标題一行顯示不全,系統會截斷;如果你沒有副标題,系統會把一行展示不完全的長标題以兩行展現。

系統會自動安排圖示在快速操作清單中的位置是在左側或者在右側,這依賴于你的應用的圖示在使用者主螢幕的位置。(摒除圖示在清單中的位置,在自左向右的語言中文字總是左對齊。)這裡有主屏快捷操作的多種展現方式的例子。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

3.2 Live PhotosLive Photos

讓使用者在豐富的聲音和動作環境下,捕捉和再現他們喜愛的回憶。從iOS 9開始,相機(Camera)應用可以捕捉附加的内容(拍照之前和結束後的聲音和額外的畫面)為傳統的、靜止的圖檔增加生活氣息。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

在iOS9.1及之後的版本中,你的應用可以讓使用者享受和分享Live Photos。這個指引可以幫助你給使用者提供更好的體驗。

在不支援Live Photo的環境中,把Live Photo像傳統照片一樣展示。不要在支援Live Photos的環境中,自定一種與Live Photo相似的體驗。

不要分開展現Live Photo的附加畫面和聲音。要讓使用者在不同的應用中體驗Live Photos時,有一緻的視覺呈現和互動方式。把Live Photo拆分開展現是一個很壞的體驗。

確定使用者可以區分Live Photo 和傳統靜止圖檔。在使用者分享照片時,幫助他們做好區分是特别重要的。最好在使用者檢視一個LivePhoto的時候,展現一點移動作為提示。萬一這個提示沒有起到作用,你可以在LivePhoto上展示一個系統提供的标記。LivePhoto不要展現一個像視訊裡回放按鈕的界面元素。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

注意

上圖這種情況,不支援像照片應用裡全屏浏覽滑動切換照片時的顯示的

把使用者所做的調整應用到Live Photo的所有幀中。如果你的應用可以讓使用者為照片添加濾鏡或者調整,應確定它可以作用于整個LivePhoto中。如果你不支援調整使用者想分享的

LivePhoto的所有内容,要讓他們知道可以以傳統照片的方式分享。 讓使用者在決定分享前,可以預覽這個Live Photo的所有内容。如果你的應用UI可以讓使用者選擇照片分享,要為他們提供一個把Live Photo作為傳統照片分享的方式。 如果你使用系統提供的标記,應該把它放在每個LivePhoto上同樣的位置。标記可以放在一個不會影響使用者檢視照片的角落。確定在你的應用中采用一緻的方式添加标記,這樣可以讓使用者依靠它去識别LivePhoto。iOS有兩種方式提供标記:

覆寫。這種覆寫的方式包含一個陰影,适合覆寫在照片上

純色。這種純色的方式(無陰影)可以被用來建立一個可調色的圖檔模闆

iOS也提供了很多純色标記,其中,圖檔上一個删除線代表現在的LivePhoto被當做是一個傳統的照片

在使用者下載下傳一個Live Photo的時候給他們一個好的體驗。尤其重要的是,使用者需要知道他們正在下載下傳的是一個LivePhoto,他們需要知道什麼時候可以播放它。如果你為一個Live Photo展示一個未播放的進度訓示器,確定這個訓示器與你的應用中其他的下載下傳體驗一緻。

3.3 錢包(Wallet)

Wallet應用是幫助使用者檢視和管理各種數字化票券的,他們是一些實體個體的數字展現,例如登機牌、優惠券、會員卡、獎勵卡和各種票。Wallet也可以讓人們添加他們的信用卡、借記卡和儲值卡結合Apple Pay使用。你可以在應用中建立一個票券,分發給使用者,并且在有更改時進行更新。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

使用合适的票券區域展現文本。在你的票券中使用允許VoiceOver的使用者擷取票券中的所有資訊的區域,保持你的票券外觀的一緻性。避免将文本嵌入圖檔或使用自定義的字型也是一個很好的方法,因為不是所有的圖示會展示到所有的裝置上,這樣對使用者來說閱讀這樣的文字會有困難。

避免使用識别一個裝置的語言。你不能預料到哪些使用者将會檢視你的票據的裝置,是以你不想使用可能在一個特别裝置上不起作用的語言。比如,文字告訴使用者“滑動去檢視”内容,當這個發生在Apple Watch上将會不起作用。

盡可能,不要隻是簡單複制已有的實體票券。Wallet 已經建立了有美感的設計,票券也都配合這種設計以看起來更好。是以不要隻是複制實體票券的外觀,抓住這次機會設計一個符合Wallet 組成和功能的幹淨簡潔的票券樣式。

對放在票券正面的資訊精挑細選。使用者期望掃一眼票券就能快速獲得他們需要的資訊,是以票券正面的資訊應該是整潔且易讀的。如果有使用者可能會需要的額外資訊,将它們放到票券的背面要比擠在正面好得多。注意,Apple Watch上的票券沒有背面。

通常情況下,避免使用純白色背景。通常,一個好看的票券應該使用鮮豔的純色背景或者使用強烈的,充滿活力的圖檔作為背景。當然,在設計背景時還要確定内容的可讀性。

在商标文本區域顯示你的公司名稱。所有票券的商标文本區域的文字都使用了統一的字型。為了避免和其他票券發生沖突,還是建議您在商标文本區域輸入文字,不要使用自定義字型。

使用白色的公司商标。商标圖檔放置在票券左上角公司名稱的旁邊。最好提供一個白色的,單色的,不包含文字的商标。如果你想要增強商标的效果,又想要與文字風格比對的話,可以增加一個在y軸方向上有1像素偏移,有1像素模糊和透明度為35%的黑色陰影效果。

如果可以的話,使用矩形的條形碼。類似于PDF417這樣的長方形條形碼比正方形二維碼更适合票券的布局。如下右圖所示,正方形的二維碼會使兩邊有空白區域并且會在垂直方向上使上下方内容變得擁擠。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

為性能去優化圖檔。因為使用者通常會通過電子郵件或者Safari接收票券,是以讓下載下傳的越快越好是非常重要的。為了提高使用者體驗,使用能滿足視覺效果的最小的圖檔檔案。

在合适的時候更新票券以增強其效用。即使一個票券代表的是一個并不會改變的實體實體,數字的票券也可以通過映射真實世界的一些事件來提供更好的使用者體驗。例如,當某個航班延誤時你可以更新登機牌上的資訊,這樣使用者就能夠通過檢視電子登機牌來獲得目前的資訊。

3.4 蘋果的移動支付平台(Apple Pay)

Apple Pay是蘋果公司面向iOS移動裝置推出的一種簡單、安全、個人的移動支付方式。當使用者在購買實體商品和服務時時,可以使用Apple Pay快速、安全地提供個人聯系方式、收貨位址以及付款資訊。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

Apple Pay支付辨別。當使用者需要在授權支付之前選擇付款方式并敲定其他資訊時,他們期望看到Apple Pay的支付辨別。Apple Pay的支付辨別應該同其他付款方式以相同或類似的格式顯示。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

支付上拉菜單。在使用者送出訂單以及完成相關支付之前,Apple Pay會顯示一個包含了聯系方式、收貨位址以及與結賬相關付款資訊的支付上拉菜單。盡管使用者依然可以在支付上拉菜單裡做些微調,比如選擇不同的送貨方式,但他們不用做出重大改變或輸入其他資訊。當使用者看到該支付上拉菜單,他們應該能夠立即完成交易并授權付款。

對于可以使用Apple Pay付費的使用者,Apple Pay的使用者界面應當始終顯示。如果使用者的移動裝置支援Apple Pay,并且他們已經激活了相關可用的銀行卡是以可以通過将Apple Pay設為預設支付方式來滿足使用者的期望。

如果使用者無法使用Apple Pay服務,就不要顯示任何Apple Pay的使用者界面。如果使用者使用的裝置不支援Apple Pay,仍強行将其作為一個支付方式選項,可能會對使用者造成混淆。但是,如果使用者使用的裝置是支援Apple Pay,但沒有綁定任何信用卡或借記卡,你可以在界面中顯示“設定Apple Pay”的按鈕。

當使用者點選了Apple Pay的按鈕,立即顯示支付上拉菜單。當使用者決定使用Apple Pay來結賬時,如果還要迫使使用者經曆額外步驟,會使支付流程顯得複雜,增加不必要的沖突,并可能會讓使用者感到沮喪受挫。當使用者點選了Apple Pay按鈕,不要顯示其他警告或模态對話框視圖。如果使用者可以提供像打折或促銷代碼之類的資訊,請在使用者點選Apple Pay按鈕之前找到一種方式來接收該資訊。

Apple Pay按鈕與其他可見的支付按鈕應保持相同的尺寸大小或更大。将Apple Pay按鈕放置在醒目的位置,可以幫助使用者輕松找到它。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

使用Handoff功能幫助使用者完成在Apple Watch上發起的購買。 Apple Watch佩戴者可以在商店完成支付,但他們無法完成由Apple Watch第三方應用程式調用的支付行為。當Apple Watch佩戴者發起了由第三方應用程式調用的支付行為,則顯示一條消息告訴他們請在iPhone上完成支付。為了更好的使用者體驗,還可以使用Handoff功能深層連結到你的iOS應用程式上,并立即顯示包含預設好的相應付款資訊的支付上拉菜單。

3.4.1 自定義支付上拉菜單 (Customizing the Payment Sheet)

根據完成交易付款所需要了解的資訊,以及所要傳達給使用者關于本次購物的資訊,來自定義Apple Pay支付上拉菜單所要顯示的内容。

支付上拉菜單僅顯示對完成交易付款有必要的資訊。如果Apple Pay支付上拉菜單顯示了些無關的資訊,使用者可能會感到困惑或焦慮。舉個例子,如果商品是線上傳遞或通過電子方式完成,需要聯系人的電子郵件位址是有意義的,而不是收貨位址。在這種情況下,要求收貨位址可能給使用者産生會有什麼東西将意外被派件到家中或公司的錯覺,或許還可能導緻他們對個人隐私被通路産生不必要的擔憂。

支付上拉菜單允許使用者可以選擇更換送件或取件方式。使用者可以從你在支付上拉菜單中設定的幾種傳遞方式中随意選擇一種。通過用文本标簽控件、報價以及可選的第二行預計到達日期,來具體描述一種收貨方式。另外,你還可以設定傳遞方式為“派件”或“取件”,讓使用者指定一個可接收快遞送貨上門或需要運輸服務取件的位置。

使用并排項來描述周期性付款和一些購買費用的小計。 并排項包含了一個标簽文本和花費數值。并排項被用來:

表明使用者授權一個定期付款項目,比如“每月訂閱 $19.99”

告知使用者關于額外費用,比如“禮品包裝 $5.00”和“稅費 $4.53”

顯示優惠券或折扣資訊帶來的減價,比如“周五特價 -$2.00”

 描述某個項目需要按實際計費,比如運輸服務“時間&amp;距離 …”

不要用并排項來顯示所要購買的商品的構成清單。

建立并排項标簽時,盡可能顯示在同一行。并排項标簽應該具體、容易了解。如果行條目标簽字元數過長,那麼很難讓你的使用者一看就懂。

商戶名稱需要緊緊跟随在同一行的“Pay”字元後面作為一個整體。確定所使用的商戶名稱以及相應的開銷支出,必須與使用者檢查自己的信用卡或銀行對賬單時的資料保持一緻。這一點很重要,因為它有助于使用者确信他們的開銷支出是無誤的。如果你的應用程式隻是作為中間媒介,而不是最終的商戶支付,請明确向使用者表明這個具體說明“付款給 最終的商戶名稱(通過 你的應用程式名稱)。

如果總價花費在支付授權時還不明确,請向使用者傳達有可能會有額外費用的資訊。舉個例子,一次汽車旅程從支付授權時刻起到駛向最終目的地,它的開銷報價可能會受行車距離或時間的影響變化。或者,一個客戶可能想要給點小費在商品已派件之後。對于這樣的情況,在支付上拉菜單中給予一個非常明确的解釋說明是很有必要的。當你使用一個并排項來配置最終總價的更新資訊時,總價金額會自動顯示為“總價待定”。另外,如果你是預授權支付一個具體金額的訂單,確定支付上拉菜單準确地反映了這一資訊。

3.4.2 簡化結賬流程(Streamlining the Checkout Process)

Apple Pay使得購物變得快速、簡單,對此人們會欣然接受的。更少的步驟和更少的需要使用者手動輸入的資訊,使得整個結賬流程更好。

始終使用Apple Pay的最新資料資訊。假設使用者一直保持Apple Pay個人資訊的完整性和時刻更新,那麼不要依賴于任何先前收集的資訊。即使你以前已收集過使用者的聯系方式、傳遞方式和支付資訊,也要在結賬時擷取來自Apple Pay的最新資訊。在結賬環節,盡量避免使用者輸入本可以從Apple Pay擷取的任何資訊。

使用Apple Pay加快購買。對于單個商品項目的購買,讓使用者隻需通過點選商品頁面上的Apple Pay支付按鈕,即可顯示支付上拉菜單并進行即時結算。購買單個商品時,無需采取額外的步驟,也無需将商品添加到購物車,使用者喜歡在應用程式中體驗到這種便利性。對于多個商品被添加到購物車中會使用相同的傳遞方式被送到相同位址的情況,一旦使用者有意向支付時,會通過顯示支付上拉菜單的快速結賬流程來支援。

在顯示支付上拉菜單前需提前收集好贖回代碼或促銷代碼。因為在Apple Pay支付上拉菜單中沒有辦法輸入這些代碼,請務必在顯示支付上拉菜單之前收集好相關代碼。

如果人們可以将購買的商品派送到不同地方,或以不同的速度發貨,請在顯示支付上拉菜單之前提前收集好該資訊。對于這種極端情況,你需要在顯示支付上拉菜單之前得到發貨資訊,因為在支付上拉菜單中沒有辦法來指定多種傳遞方式和位址。一般情況下,在支付上拉菜單中務必收集到傳遞方式和位址資訊。

顯示訂單确認頁面或緻謝頁面。在交易完成時,通過使用訂單确認頁,以這種直接的使用者體驗來顯示關于商品能派送到的預計時間以及使用者如何跟進訂單狀态的資訊。

如果合适的話,請在你的訂單确認頁上提到Apple Pay。盡管在你的确認頁面上提到Apple Pay不是必要的,如果你願意選,可以使用其中的一種格式:

“Visa 

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

1234(Apple Pay)”

 “用Apple Pay已完成付款”

3.5 研究型應用程式(Research Apps)

這些規範準則僅供參考之用,并不構成任何法律意見。對于與你的研究型應用程式發展以及任何法律适用的相關建議,你應該向律師咨詢。

通常情況下,一個研究型應用程式是由ResearchKit定制化的界面視圖以及應用程式本身具體設定的界面視圖組成,可歸納為三種主要的體驗:

參與者的就位教育訓練(Onboarding)

研究性調查(Study-specific investigation)

 管理條目資訊(Management items)

設計你的研究型應用程式時務必要遵循以下每個部分的規範準則,将有助于你的使用者參與者感到舒服和保持參與感。

3.5.1 參與者的就位教育訓練(Onboarding)

就位教育訓練的體驗包含了一系列向潛在參與者介紹研究内容以及征詢他們同意的環節。完成這些以後,參與者通常不會再重新通路這些就位教育訓練的内容環節:

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

你應該按如圖所示的這個順序呈現就位教育訓練的各個體驗環節,也就是按介紹指引、适任、知情同意,以及授權通路資料。

建立一個具有号召性用語的介紹指引。指引環節應該幫助人們了解更多關于你的研究以及告訴他們如何成為一名參與者。指引環節最好也能向那些現有的參與者提供快捷登入的入口以便繼續正在進行的研究。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

盡快确認招募的使用者是否合格。适任環節呈現在指引環節之後、知情同意環節之前(如果參與者并不适合該研究則沒有必要讓其檢視知情同意環節)。請确認所呈現的适任資質要求對于你的研究來說是必要的。請使用簡單、直白的語言描述這些要求,并讓使用者可以很容易就輸入相關資訊。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

在得到參與者的同意之前,確定他們已充分了解你的研究内容。ResearchKit有助于讓知情同意流程顯得簡潔、友好,同時還允許将你同意的任何法律規定或由機構審查委員會和倫理審查委員會所設定的規定納入其中。(如果你的應用程式涉及到進行人體生物學相關的研究,必須確定你的應用程式符合現有的蘋果應用商店規範指南,并獲得參與者的許可。)通常情況下,知情同意環節包含了:

說明這項研究是如何工作的

確定參與者了解研究内容以及各自的責任

 獲得參與者的許可

将冗長的同意書分解成易了解消化的小節。每個小節可以隻覆寫研究内容的一個方面,比如資料采集、資料應用、潛在好處、可能的風險、時間承諾、如何撤出等等。每個小節請使用簡潔、直白的語言來說明一個高度概括的内容。如果有必要,提供一個檢視詳情的按鈕便于參與者了解該小節更詳細的解釋。應該讓他們在同意參與之前,就檢視完全部知情同意内容。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

通過一個小測驗來測試參與者的了解情況是有意義的。在獲得參與者允許的情況下,你可以選擇向每個參與者詢問相同的問題。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

你的研究必須獲得參與者的同意,如果合适,還可以收集一些聯系人資訊。參與者同意參與研究後,他們需要提供個人簽名以及聯系方式,最後會收到一個确認對話框。對于這些資訊記錄,大多數的研究型應用程式會向參與者電郵一份PDF格式的同意書。

參與者需要對這個确認自願參與研究的告警對話框給予響應

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

參與者可以提供他們的個人簽名在知情同意流程中

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

如果你需要通路參與者的裝置或資料必須得到他們的許可。必須解釋清楚你的研究型應用程式為什麼需要通路他們的位置資訊、健康應用程式或其他資料,并且確定避免向參與者索要對你研究并非至關重要的資料。同樣地,如果你需要向參與者發送通知提醒也要獲得參與者的許可。

讓參與者準備授權通路資料,比如健康應用程式的資料

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

讓參與者自己選擇他們願意與你共享的資料

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

3.5.2 具體研究的調查(Study-Specific Investigation)

為了從參加者獲得資料輸入,你的研究可能會使用情況調查、活動任務,或兩者的組合。根據你的研究的體系結構,參與者可能會在每個環節多次或僅需完成一次互動即可。

問卷調查的設計應該能讓參與者專注參與其中。 ResearchKit可以很容易就呈現多種答案類型的調查問題,比如對錯、多選、日期和時間、比例計算,以及開放式文本填寫。當你使用ResearchKit的界面視圖來建立一項調查,請遵循以下準則,來保證好的使用者體驗:

告訴參與者總共有多少道問題,以及完成調查預計需要花費的時間

每屏隻呈現一道問題

顯示給參與者目前調查的進度

調查應該盡可能簡短。幾個簡短的調查往往好于一個冗長的調查

對于需要額外解釋的問題,問題描述請用标準字型大小,然後解釋文字用略小的字型大小

 調查結束時要告知參與者

ResearchKit提供了許多用于調查環節的可自定義界面視圖。這裡有一些樣例。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

使得活動任務容易了解。活動任務需要參與者參與到一次活動中來,比如對着麥克風語音、手指在螢幕上完成點選、行走散步,以及執行一次記憶力測試。請按照以下幾點準則來鼓勵參與者執行活動任務,并給與他們成功的絕佳機會:

請用簡潔易懂的語言來描述如何執行本次任務。

如果任務必須在特定的時間或特定情況下進行,請務必明示。

 確定參與者可以分辨出任務何時結束。

以下是ResearchKit所支援的兩個活動任務樣例。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

3.5.3 管理條目資訊(Management Items)

ResearchKit提供了個人檔案的界面視圖來讓參與者可以管理他們的個人資訊。此外,建立一個可以激勵使用者并能讓他們追蹤他們在研究中的進度的界面視圖是個不錯的選擇。在大多數情況下,參加者應該能夠随時通路這兩個子產品。

使用個人檔案來幫助參與者管理個人資訊和與你研究相關的資料。個人檔案界面視圖允許參與者在研究程序期間可以編輯相應資料,比如體重或睡眠習慣,并且可以提醒他們即将到來的活動任務。你同樣可以在個人檔案中給予參與者一種簡單的方式離開該研究、檢視知情同意書,以及檢視該應用程式的隐私政策。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

使用儀表盤概覽視圖來激勵參與者,并呈現進度。一個概覽視圖可以讓你與參與者對資訊一覽無餘并鼓勵他們繼續參與。如果你的研究内容合适的話,你可以使用該概覽視圖給予參與者豐富的回報,比如每日進度、每周評估、具體活動的結果,以及同其他參與者的彙總結果進行對比。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

3.6  應用擴充(App Extensions)

應用擴充可以延伸應用的使用範圍。當使用者使用其他應用時,應用擴充使得使用者仍能使用你應用的核心功能。舉個例子,當人們在Safari中浏覽網頁時,他們可以使用你的分享擴充來發送一張圖檔或一篇文章到你的社交網站上。或者當使用Photos(照片)應用時,人們可能會使用你的圖檔編輯擴充來為一張圖檔加上一個濾鏡效果。(在這些場景中,Safari和照片應用承載使用者使用擴充的場景,因而被稱為宿主應用(host apps)。)

你需要送出包含應用擴充的完整iOS應用到App Store(包含擴充的應用被稱為容器應用(containing app))。在你的容器應用中啟用擴充之後,人們就可以在使用其他應用時,使用擴充來執行快速任務。例如,在郵件中浏覽某個商品時,人們可以不用離開郵件應用就使用你的動作擴充來把商品添加到購物清單中。 表 22-1 列舉了可以多個建立的iOS應用擴充類型。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

確定是單任務。應用擴充并不是應用的精簡版,它幫助使用者在有全局目标的上下文中完成狹義範圍内的有限任務。例如,動作擴充可以為使用者提供一種不同的方式來檢視目前内容。

保證使用者的互動是有限和流暢的。好的應用擴充應該隻需幾步點選就可以幫助人們完成任務,這樣他們就能盡快回到之前的場景中。例如,分享擴充隻需一次點選即可完成一張圖檔的分享。

将容器應用及其應用擴充的名稱保持一緻。一個容器應用中如果有多個擴充,需要使用不同的名稱,你需要確定使用者能夠了解你的擴充和應用之間的關系。人們會在很多不同的情況下遇到擴充,如果他們當下沒有認出來,那麼他們就未必會信任這些擴充。

重要:和設計圖示和圖形一樣,不要重複使用iOS的圖示和圖檔,不要為蘋果的産品和設計再設計一套圖檔。

避免在擴充上顯示模态視圖。很多擴充預設以模态視圖來顯示,是以應避免再疊加模态視圖。盡管有時候使用者可能會在擴充上遇到警告框,但是在設計擴充的流程時,應避免出現模态視圖。

3.6.1 今天部件(Today Widgets)

人們會在通知中心的今天區域中檢視今天部件(Today widgets)。因為人們會設定今天區域以顯示他們最關注的資訊,是以在此進行設計可以有效幫助你的部件在這些使用者最重要的資訊中占據一席之地。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

設計與通知中心風格一緻的外觀。當使用通知中心的預設邊距和背景時,你的今天部件就會給使用者以統一的體驗。為獲得最佳的結果,你應該重點關注你的内容而不是背景或者其他的,尤其應該避免繪制一片純色背景。

注意:iOS會自動在自定義的部件内容上方顯示應用的圖示和标題(圖示會顯示在标題前面的空白處)。

将部件内容與标題對齊。當你的部件内容與标題對齊時,人們就可以很簡單地浏覽今天視圖中他們想要的部件。遵守今天視圖中的邊距規範,并将内容限制在如圖的部件内容區内。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

提供通知中心式的體驗。人們通路通知中心來擷取簡要的更新或者執行一個非常簡單的任務,是以今天部件最好隻顯示适量的資訊和進行有限的互動,特别是:

避免使用者在部件中需要滾動或縱向移動來檢視全部的資訊。部件可以通過縱向擴充來顯示更多的資訊,但若部件的高度超過通知中心的高度就不是一種好的體驗了,因為這樣會幹擾其他部件的檢視

避免使用橫向掃動或拖曳,因為這會幹擾在通知中心進行導航

盡可能使使用者隻需一步操作就完成任務或打開你的應用(注意,在今天部件中鍵盤是不可用的)

  優化性能以便人們可以即刻獲得有用的資訊。可以考慮在本地緩存資訊,以便當有更新時就可顯示最近資訊。人們隻希望在今天視圖中花很少的時間,如果部件使用記憶體不當,iOS就可能會終止它

在适當情況下,讓人們點選你的今天部件來打開你的應用。因為今天部件提供了專一的體驗,是以就能有效引導人們去到你的應用以擷取更多資訊或功能。最好不要顯示“打開應用”按鈕,而是應該讓你的整個今天部件都可被點選來打開應用。你也可以讓使用者點選部件中的UI對象,以打開你的應用并跳轉到關于此UI對象的視圖中。舉個例子,月曆部件顯示了今天的事件,如果使用者想要獲得某個事件的更多資訊,他們可以點選部件中的事件來打開月曆應用進行檢視。

注意:雖然從部件打開應用的方式對使用者來說還不錯,但繼續在部件中提供有用且及時的資訊依然是很重要的。人們可不一定會欣賞一個功能隻是打開應用的今天部件。

如果可能,在今天部件中讓人們知道他們需要登入來擷取有用的資訊。如果你的今天不見需要人們登入檢視資訊,展示一個資訊去鼓勵他們登入和解釋什麼樣的内容将會被呈現。例如,如果你的時間部件即将到來的預約是使用者登入後展現的,你可能需要讓使用者“登入我的應用去檢視即将到來的預約”。

不要制作一個今天不見需要打開除了你自己應用外的應用。一個模拟iOS主屏的行為的時間部件不會為你的使用者提供有用的功能。

3.6.2 分享和動作擴充(Share and Action Extensions)

人們通過點選應用中的動作按鈕(Action button)來使用分享和動作擴充。在通過動作按鈕顯示的動作視圖控制器(activity view controller)中,動作擴充被列在底部,分享擴充被列在動作擴充之上。人們可以使用更多(More)按鈕來管理顯示在動作視圖控制器中的分享和動作擴充。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

分享或動作擴充通常被認為是在目前使用者場景下用來輸入内容之用。例如,當在Safari中閱讀一篇文章時,使用者可能會點選動作按鈕并使用一個分享擴充來發送這篇文章到分享網站上,也可能會使用一個動作擴充來檢視這篇文章的翻譯。

注意:在動作視圖控制器中,iOS隻會顯示支援目前内容類型的動作擴充。例如,當使用者目前内容是視訊時,iOS就不會顯示支援文本的動作擴充。

如果上傳需要一定時間,那就應考慮在分享擴充的容器應用中顯示上傳進度。無論分享的檔案有多大,人們都期待在點選擴充中的發送或分享按鈕後,能立即傳回他們之前的場景。你需要讓進度狀态随時更新,但是人們不想每次上傳完畢後都收到通知,并且也無法自動重新開機擴充。在這種場景下,在容器應用中顯示上傳進度是一種解決方案,這樣容器應用就可以在背景處理任務,并在遇到問題時發送通知。

動作擴充使用單色的應用圖示。( 不同的是,分享擴充則應該使用其容器應用的彩色應用圖示。) 要為動作擴充設計圖示時,你可能需要從建立一個應用圖示的模版開始着手。如有需要,可以專注圖示所特有的元素來進行簡化設計。

如果你在容器應用中提供了多個動作擴充,那麼最好為他們設計一套圖示,且確定這套圖示中的每一個看起來都與容器應用的圖示是有關聯的。

3.6.3 圖檔編輯擴充(Photo Editing Extensions)

當人們在照片(Photos)中檢視圖檔或視訊時,可以使用圖檔編輯擴充。一般來說,圖檔編輯擴充能幫助使用者篩選圖檔或進行一些其他的圖檔或視訊編輯。在使用者确認之後,編輯後的内容就會出現在照片應用中。

照片應用提供了一個模态視圖來顯示圖檔編輯擴充的自定義UI。當使用者在确認對圖檔或視訊的編輯時選擇了取消(你必須要在代碼上保證存在這個行為),照片應用還可以顯示一個确認視圖。

避免在圖檔編輯擴充中使用導航欄。如圖所示,承載擴充的模态視圖已經包含了導航欄,若再增加另一個導航欄,既會占據更多你的界面空間,還會使使用者産生困擾。(照片應用預設會以全屏高度來顯示你的視圖,是以你的内容會出現在内建的導航欄之下。)

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

如果可以,讓使用者能夠預覽編輯結果。盡可能讓使用者在關閉擴充傳回照片應用之前看到他們編輯的成果。

3.6.4 文檔提供者擴充(Document Provider Extensions)

注意:文檔提供者擴充由兩個不同的部分組成:文檔采集視圖控制器擴充和檔案提供者擴充。文檔采集視圖控制器擴充包括了你的自定義UI,檔案提供者擴充實作對檔案的通路。為了簡單起見,本節所使用的術國文檔提供者擴充(Document Provider extension)是為了表述擴充中文檔采集視圖控制器部分的UI和體驗。

避免在文檔提供者擴充中使用導航欄。iOS會顯示擴充的自定義UI,而自定義UI又包含在文檔采集視圖控制器中基于導航欄的界面之中。是以,在内建導航欄之下再顯示第二個導航欄會使使用者感到困惑,并且還會占據原本你的内容區域。(文檔采集視圖控制器預設會以全屏高度來顯示你的視圖,是以你的内容會出現在内建的導航欄之下。)

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

3.6.5 自定義輸入法(Custom Keyboards)

人們在整個系統中使用帶有自定義輸入法的輸入法擴充來替換iOS的自帶輸入法。在啟用輸入法擴充之後,除了受保護的文本區域(例如密碼輸入區)和手機鍵盤區(例如聯系人中的電話号碼區)外,當人們點選任何文本輸入區域後就能使用自定義輸入法。

為使用者提供明顯的方式來切換輸入法。人們對于iOS的輸入法切換按鈕很熟悉,他們會期望在你的輸入法中也有類似的體驗。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

如果可能,在你的容器應用中包括一個教程。如果必要,使用你的自定義鍵盤的容器應用去給人們講解如何啟用和使用你的鍵盤。不要把這個資訊直接放在鍵盤本身,因為它可能讓人們嘗試使用這個鍵盤時感到困惑。

3.7  HomeKit

通過HomeKit,使用者能夠友善地在家中使用iOS裝置上的智能家居應用來操控家中相關聯的裝置(無論這些裝置制造商是誰)。最好的智能家居應用內建HomeKit和iOS系統來幫助使用者:

建立家居環境、房間和區域

添加、尋找和移動家居裝置(如燈泡或溫度調節裝置)

定義能夠使一組多個家居裝置響應的行為

管理使用者

 用Siri來操控他們的家居設施

不要想當然地認為你的裝置會是使用者所設定的首個裝置。你的應用除了能讓使用者很容易就能建立家居環境、房間和區域,還需要讓使用者能友善地将你的裝置接入之前已經設定好了的區域中。

讓添加新裝置變得簡單。不要強迫使用者在添加裝置之前新增賬號。最好讓你的應用能自動發現新的裝置并将他們顯著地展示在使用者界面上。確定所展示的資訊足夠充分讓使用者可以輕易辨識出該家居裝置。

幫助使用者辨認他們正在調節的裝置。給使用者一個能夠幫助他們從實體屬性辨認裝置的控制器。例如,你可以讓使用者通過閃一下燈泡來确認他們正在調節的是他們想要調節的那個。

讓使用者能夠通過多種方式來搜尋裝置。當天的時間、季節和使用者目前的位置會在特定的時刻成為判别某些裝置是否重要的影響因素。是以,你的應用應該允許使用者能在家中按類型、名稱、或者位置的方式來搜尋裝置。

為家中已接入的裝置提供推薦的操作集。操作集允許使用者設定在某種情景下讓多個家居裝置按照特定的方式行動。例如,一個“離開”操作集可以将房屋内的溫度調低、關閉電燈和鎖上所有房門。你的應用可以向使用者推薦一些已經設定好了的操作集或者讓使用者建立自定義操作集。當使用者能夠基于房間或區域去建立自定義操作集時,讓使用者可以從你推薦的裝置清單中進行選擇,通常能使使用者獲得更好的體驗。

使用友好的交談式語言讓你的應用平易近人、易于使用。智能家居概念可能會懵到使用者,應避免使用他們可能不了解的縮寫和技術術語。例如,HomeKit是指代API的專用技術術語,它就不應該在你的應用中使用。

注意:如果你是蘋果MFi認證許可商,請通路MFi門戶網站檢視裝置包裝的命名及消息通知的規則。

與Siri互動。通過Siri,使用一個簡單的陳述句就能控制執行複雜的操作。Siri能夠識别操作集、房屋、房間和區域的名稱,并且能夠了解像“Siri,把前門關了”、“Siri,把樓上的燈關了”和“Siri,把多媒體房的溫度調高一點”這樣的陳述。遵循以下準則能幫助你為使用者提供使用Siri操控裝置時的良好體驗:

  使用Siri能夠識别的功能名稱,而非裝置名稱。一個裝置可能提供多種功能(例如,一個既有風扇功能又有照明功能的風扇吊燈),是以,幫助使用者區分這些功能是很重要的。最佳方案是讓使用者在一系列不包含公司名稱及型号的限定的名稱中進行選擇,并且允許他們以後編輯。你所推薦的名稱應該使用規範的、容易了解的詞語來描述功能,并可選擇是否包含家中的位置資訊,例如“客廳燈”或者“車庫門”。你還可以讓使用者指定一種控制插座開關的通用密碼,例如“Siri,把燈關了”,來控制所有的燈具和其相關的裝置

  當使用者配置操作集的時候,告訴使用者如何通過Siri去操控它。舉個例子,當“電影”這個操作已經确認配置完畢時,讓使用者知道他可以通過跟Siri說“Siri,把家調成電影模式”這樣的話來激活這個操作。 注意,當使用者單獨對Siri說出某操作的名稱時,同樣也能激活那個操作。Siri能夠識别系統預置以及使用者自定義的操作集,這些已配置的操作集至少包含一項操作

幫助使用者設定觸發機制。在iOS9中,HomeKit支援觸發機制:當滿足特定的時間、地點或其他裝置的行為的條件時激活操作的方式。比如使用者可以設定一個當太陽落山且車庫門打開時,就打開廚房燈操作的觸發機制。設定一個包含多個項目的條件關系容易使人感到混亂,是以,将你的設定界面做得簡單易用至關重要。舉例來說,使用與人們平常說話一樣的表達方式來展示項目、屬性和邏輯,就更容易使人了解。

3.8 多任務處理(Multitasking)

多任務處理讓人們在螢幕上(在合适的iPad模式上)檢視多個應用,可以在最近使用的應用之間進行快速切換。在iOS9,中,人們可以使用多任務處理UI(下圖所示)去選擇最近使用的應用。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

能否在多任務進行中處理好取決于能否在裝置中與其他應用和諧共存。從更高的層面來說,這意味着所有的應用都應:

仔細調整資源使用避免占用太多CPU,記憶體,螢幕空間和其他資源

處理好中斷或來自其他應用的聲音

停止和重新開機,即快速平滑地從背景切換到前台

不在前台時應恪守己任

確定你的UI可以處理兩倍高度的狀态欄。兩倍高度的狀态欄會在諸如通話、錄音和共享等過程中出現。在未作處理的應用中,狀态欄的額外高度會引起布局問題,如UI被向下擠壓或者被遮住。在多任務處理環境中,使兩倍高狀态欄顯示正常是格外重要的,因為它可能會出現在更多的應用當中。

準備好暫停需要人們注意或主動參與的活動。例如,如果你的應用是一款遊戲或媒體觀看應用,你需要確定你的使用者從應用切換走時,不會丢失任何内容或事件。當人們切換回遊戲或媒體播放器時,他們希望能繼續之前的體驗,就好像他們從未離開過應用。

確定音頻行為合适。當你的應用正在運作時,多任務處理會使得其他媒體活動更可能地同時進行,也會有更多可能性使你的音頻不得不暫停,并恢複進行中斷。檢視聲音來幫助你確定你的音頻能滿足人們的期望,并與裝置中的其他音頻和平共處。

适度使用本地通知。應用可以在特定時間發送本地通知,無論應用是在暫停中還是運作中亦或是根本就沒有運作。為了達到最好的使用者體驗,應避免用過多的通知來騷擾人們,并遵循通知中建立通知内容的指南。

必要時,在背景完成使用者的任務。當人們開始一個任務時,他們通常會期望即使已經從應用中切換走了任務仍能夠完成。如果你的應用在執行使用者任務途中,并且這個任務不需要額外的使用者互動,那麼你就應該在應用挂起之前就在背景完成任務。

3.9 通知(Notifications)

通知為人們提供即時的重要資訊和功能。人們能在多種情況下收到通知,例如在鎖屏界面中,或者在使用應用時,或者通路通知中心時。 通知中心有兩種視圖:通知(Notifications )和今天(Today)。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

通知視圖會顯示使用者感興趣的應用所發出的最近通知。使用者可以在設定(Settings)中來設定是否在通知中心顯示該應用的通知。 iOS應用可以使用通知來讓人們知道一些有趣的事情是什麼時候發生的,例如:

收到一條消息

事件即将發生

有新的資料可下載下傳了

 某些狀态發生了變化

在iOS8及之後的版本中,應用可以定義使用者在通知中的操作。例如,使用者可以在待辦事項應用的通知中就标記該事項已完成,而無需額外打開應用。 iOS定義了兩種類型的通知。

  本地通知(local notification)由應用安排待發送,最終通過iOS發送到同一裝置中,無論該應用目前是否正在背景運作。例如,月曆或待辦事項應用可以安排一條本地通知來提醒人們一個即将到來的會議或者日期。

  遠端通知(remote notification)(也稱為推送通知(push notification))是由應用的遠端伺服器通過蘋果推送通知服務來發送的,這類通知最終會被推送到所有安裝了該應用的裝置。例如,一款線上競技類的遊戲,使用者可以和其他玩家競賽的,可以更新所有玩家的最新狀态。

注意:應用擴充可能會要求遠端通知必須發送到它的容器應用。在這種場景下,容器應用常常會在背景運作來處理通知。想要了解更多關于應用擴充的内容,請參見應用擴充。

如果當你的應用正在背景運作時收到了本地或遠端的通知,你就應該以你的應用所特有的方式将資訊傳達給你的使用者。 為了確定使用者能夠自定義他們的通知體驗,你應該盡可能多地支援以下的通知類型:

橫幅(Banner)

警告框(Alert)

小氣泡(Badge)

 聲音(Sound)

注意:在iOS8及之後的版本中,你必須對所有你想發送給使用者的通知類型進行注冊。當你第一次進行注冊動作時,使用者會遇到一個警告框,他們可以在其中操作來決定允許或拒絕所有來自你的應用的通知。不管使用者選擇的結果是什麼,他們應始終能通路應用的設定來更改此項設定,或者設定他們想要接收的通知類型。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

橫幅(banner)是一個小而透明的視圖,會出現在螢幕頂部并在幾秒後消失。使用者還可以看到在鎖屏當中的橫幅以及在通知中心中以通知形式出現的橫幅。在橫幅中,iOS會顯示通知的内容和應用的小圖示(欲了解更多關于小圖示的内容,請參見 App Icon)。使用者點選橫幅來隐藏顯示并切換到發送通知的應用。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

除了預設的點選動作之外,當使用者輕掃橫幅時,你還可以定義兩個動作按鈕。點選通知動作按鈕來隐藏橫幅的顯示并啟動你的應用(可能是在背景)來執行動作。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

通知警告框是顯示在螢幕上的标準警告框視圖,需要使用者操作後才會隐藏。當使用者點選Options按鈕後,你需要提供并顯示通知消息以及任何一個預設動作,或最多四個特定動作。警告框的背景樣式不能做修改。 當使用者點選警告框中的一個預設或自定義動作按鈕時,iOS會同時隐藏警告框并運作你的應用(可能是在背景)。點選關閉或确定按鈕會隐藏警告框而不打開應用。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術
[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

小氣泡(badge)是一個顯示未讀通知數量的紅色小圓(小氣泡顯示在應用圖示的右上角)。小氣泡的大小和顔色不能做修改。 橫幅、警告框和小氣泡這三種通知都可以使用自定義或系統提供的聲音。

在通知中謹慎使用具破壞性的動作。要确定使用者有足夠的上下文來避免意想不到的後果。為了幫助使用者區分你所定義的破壞性動作,iOS會用紅色來顯示它。有時候,在應用執行破壞性動作之前,應該請求使用者進行确認。舉個例子,如果在鎖屏的橫幅(banner)中提供了一個破壞性動作,那麼就應確定隻有裝置的主人才能執行該動作(你需要在代碼上實作這一需求)。

為每個動作按鈕提供自定義标題。建立一個簡短的标題來描述清楚将要發生的動作。例如,遊戲可能會使用“Play”作為标題來表明,點選這個按鈕會打開應用來進行遊戲。確定标題:

使用标題樣式的大小寫(title-style capitalization)

足夠簡短,能不被截斷地顯示在按鈕内(也應確定測試各種語言文字的标題顯示正常)

不要為同一個事件重複發送通知。使用者可以選擇處理通知項;通知項在使用者未處理前會一直顯示。如果為同一事件重複發送通知,通知中心清單中會滿是通知,使用者就有可能會關閉你的應用的通知

不要在通知消息中包含你的應用名稱。自定義資訊會在警告框和橫幅中顯示,也會在通知中心中以通知的形式顯示。你無需在自定義資訊中顯示你的應用名稱,因為iOS會在顯示資訊的同時自動顯示應用名稱。 為了使本地或遠端通知資訊更有作用,你應該:

專注于資訊而不是使用者的行為。避免告訴人們點選哪個按鈕或如何打開你的應用

足夠簡短,一兩行就可以顯示完整。較長的資訊對于使用者來說很難進行快速閱讀,也會造成在警告框中需要滾動才能檢視完整

使用句式大小寫(sentence-style capitalization),并配以合适的結束語句符号。可能的時候,可以使用一個整句

注意:如有必要,iOS會縮短你的消息以便能在各種通知發送樣式下顯示;為了最好的效果,你不應主動縮減你的消息。

保持小氣泡的内容是最新的。當使用者注意到新資訊時,即時更新小氣泡非常重要,這樣使用者就不會覺得收到了額外的通知。注意,當小氣泡為0時也會移除通知中心中所有對應的通知項。

重要:不要使用小氣泡做通知以外的用途。記住,使用者能夠關閉應用的小氣泡,是以你無法确定他們一定能看到小氣泡中的内容。

當收到通知時,提供使用者可以選擇聽到的音效。當人們沒有在看螢幕的時候,可以通過音效擷取他們的注意。例如,月曆應用可能會在顯示警告框的同時播放一個音效來提醒人們一個即将到來的事件。再如,協作任務管理應用可能會在小氣泡更新時播放一個音效來告知某個遠端協同的同僚已經完成了某個任務。

3.10 社交媒體(Social Media)

人們會期望在任何場景下都可以使用他們喜愛的社交媒體帳号。iOS以人們喜歡的方式将社交媒體的互動與你的應用進行了整合。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

注意:當使用者點選動作按鈕時,他們會得到一個如上圖的動作視圖控制器。想要了解更多關于這個視圖控制器的内容,請參見Activity View Controller。

動作視圖控制器的中間一行顯示了使用者啟用的和系統提供的分享應唨擴充。想要了解更多關于設計分享擴充的内容,請參見 Share and Action Extensions。

如果可能,避免要求使用者登入進入一個社交媒體賬戶。社交架構(Social framework)會和帳号架構(Accounts framework)一起來支援一個單點登入模式,是以你可以獲得授權來通路使用者的帳号,而無需要求他們來重新授權。如果使用者還沒有登入進入一個帳号,你可以顯示UI來讓他們進行登入。

3.11 iCloudiCloud

可以讓使用者随時随地用不同的裝置通路他們想要的内容。将iCloud內建到應用中,使用者不用進行同步操作就可以在不同場景下使用不同的裝置通路并編輯私人資訊。

[ISUX譯]iOS 9人機界面指南(三):iOS 技術[ISUX譯]iOS 9人機界面指南(三):iOS 技術

iCloud使用者體驗的一個基本方向是透明性:理想情況下,使用者不需要知道他們的資訊存儲在什麼地方,也不需要去思考目前浏覽的資訊是哪個版本的。以下幾點可以幫助你建立使用者期望的iCloud體驗。

如果可能,讓使用者友善地在你的應用中啟用iCloud。在iOS裝置上,使用者可以在設定中登入iCloud賬戶,是以多半使用者會期望應用可以自動啟用iCloud。但是如果你覺得使用者可能需要自主選擇是否使用你應用的雲服務,你可以在使用者第一次進入應用時提供一個簡單的選項來進行設定。大多數情況下,這個選項應該為:是否将所有内容上傳到雲端。

尊重使用者的iCloud空間。一定要記住iCloud空間是使用者花錢買來的有限資源。你應該使用iCloud來存儲使用者自己建立和可了解的資訊,避免将可再生的應用資源和内容存儲在雲端。同樣要記住,當使用者登入了iCloud賬戶時,你的應用的檔案夾内容也會自動備份到雲端。是以為了節省使用者雲端空間,你最好隻挑選必要的資訊存儲于檔案夾中。

避免讓使用者自己選擇在iCloud上存儲哪些檔案。一般地,使用者會期望他們在意的所有資訊都能夠通過iCloud通路到。實際上大多數使用者都不需要進行個人檔案存儲的管理,是以你的應用也可以不用考慮這個問題。為了提供更好的使用者體驗,你可能想要重新建構處理和展示内容的方式,這樣就可以給使用者提供更多的檔案管理功能。

決定哪種類型的資訊需要存儲在雲端。除了存儲使用者自建的檔案和内容,你還可以存儲少量的其他資訊在雲端,例如使用者目前的狀态,使用者的偏好設定等等。你可以使用iCloud的關鍵值存儲來儲存這類資訊。例如,使用者使用你的應用看了一個雜志,你可以使用iCloud的關鍵值存儲來儲存使用者浏覽到的位置,這樣使用者在别的裝置上重新打開這個雜志時就能從上次離開的地方繼續浏覽了。

如果你使用iCloud的關鍵值存儲來儲存使用者的偏好設定,確定使用者在每個裝置上都是想這樣設定的。例如,有些偏好設定在工作環境中比在家裡要更好用。在某些情況下,将偏好設定儲存在應用伺服器上要比儲存在雲端更合理,這樣偏好設定就不會受iCloud的限制。

確定iCloud無法使用時應用的行為是合理的。例如,使用者退出iCloud賬戶,關閉應用的iCloud或者進入飛行模式時,iCloud都是無法使用的。在這些情況下,使用者都進行了某些操作來禁止iCloud服務,是以你的應用可以不用再進行提醒。但是,需要告訴使用者在打開iCloud之前,目前做的修改在其他裝置上都無法看到。

避免給使用者建立“本地”檔案的選項。不管你的應用是否支援iCloud,都不應該給使用者提供因裝置而區分的檔案系統。相反,你應該希望使用者關注通過iCloud通路檔案的普适性。

在合适的時候自動更新資訊。最好不需要使用者來确認他們正在通路的是最新的内容。但是,也需要在使用者裝置存儲空間和帶寬限制之間做出平衡。如果你的使用者要使用非常大的檔案,那麼讓他們自己選擇是否要從雲端下載下傳一個更新的檔案可能更合适。如果需要這樣做的話,可以設計一種方式來指出目前在雲端有一個該檔案的最新版本。當使用者選擇更新時,如果下載下傳時間較長最好給使用者明顯的回報。

告知使用者删除某檔案的後果。當使用者從有iCloud服務的應用上删除檔案的時候,這個檔案同樣會從使用者的iCloud賬号和其他裝置上删除。是以最好在執行删除操作之前告知使用者删除的後果,讓使用者進行确認。

必要時盡可能早地告知使用者沖突問題。使用iCloud程式設計接口,你需要在不打擾到使用者的情況下解決大多數不同版本之間的沖突問題。但在有些情況下,你需要盡可能早地檢測出沖突問題來避免使用者在錯誤版本上浪費太多時間。你需要設計一種自然的方式來告訴使用者有沖突存在,接着給使用者提供友善的方式來區分不同版本以及做出決策。

確定在搜尋中包括使用者在雲端的資訊。使用iCloud的使用者趨向于認為雲端的資訊是普遍可通路的,是以他們會期望搜尋結果中也有雲端的資訊。如果你的應用允許使用者搜尋他們的資訊,確定你使用了将搜尋擴充到iCloud賬戶的接口。

繼續閱讀