通過手機的通知系統,可以將應用程式的一些重要訊息告知給使用者。流暢、舒適、友好的應用程式離不開精心設計的訊息提醒機制。但是並不是所有的通知都是使用者想看的,否則只會給使用者造成騷擾,所以要謹慎使用通知。
在對《Android Design》進行翻譯時發現:Android系統已經提出了一些關於通知訊息的設計建議,故在此分享給大家。
一、何時使用通知?
通知主要用於對時間敏感(Time Sensitive)的事件,尤其是涉及他人(Involve another person)的同步事件。例如下面的Gtalk和日曆發出的通知就是時間敏感,且與人相關的事件。
那麼什麼時候又不應該使用通知呢?官方的建議是:
不直接針對使用者的,或不緊急的資訊。例如SNS中與使用者沒有直接關係的新鮮事。Path可能就犯了這個錯誤。
正顯示在當前螢幕的資訊也不必建立一個通知。即正在聊天的時候,就不必再建立關於聊天訊息的通知了。
系統可以自己完成而無需使用者操作的簡單動作,例如儲存、同步或者是更新應用程式等。
如果發生錯誤了,但是應用程式可以快速自我恢複,此時也不必用通知去打斷使用者,甚至都可以不用讓使用者知道這個錯誤。
對於使用者不能手動啟動或停止的服務,也不必使用通知。
不要為了讓使用者對你的品牌記憶深刻而建立多餘的通知,否則只會讓使用者反感。想讓使用者對你的應用程式保持注意力並且提供少量內容的最好方式是提供小組件(widget)給使用者,讓使用者可以將它放到首頁。
二、通知的設計指南
1. 使其私人化
其他使用者發過來的通知應該在通知裡包含使用者的頭像(Icon/Photo),還要顯示通知的標題(Title)、訊息內容(Message)、時間戳記(Timestamp),以及應用程式的表徵圖(Secondary Icon)。
2. 合并同類通知
如果一個應用程式發出了多個相同類型的通知,而且這些通知都還沒被處理的話(被處理的通知會被移出通知抽屜),那麼請將相同類型的通知合并為一個。
合并後的通知會有一個總結性的描述,並且能讓使用者知道一共合并了多少條通知(Number Pending)。
3. 對時間敏感事件的時間戳記
預設的系統通知會在通知右上方打上時間戳記,如果你認為顯示時間戳記對你的通知是沒有意義的,那你可能就要重新考慮是否值得為這條訊息建立一條通知了。如果這條通知確實足夠重要,再決定是否不顯示時間戳記。
常見的需要顯示時間戳記的通知是通訊通知,如Email、簡訊、聊天訊息這種,使用者需要通過時間戳記來理解訊息的上下文。
4. 通知相關的導航機制
如果使用者點擊了一條通知,此時應該將相關的應用程式開啟到可以對通知中提到的內容進行操作的狀態。但如果使用者點擊了一個合并的通知,應該去到列表頁面(內容頁的上一層級),後面第三部分會詳細闡述。
5. 自我清理
有些通知會在某個時間點出現告知使用者一些相關的資訊和提示,但是如果過了那個時間點,這個通知可能對使用者來說就不重要了,此時就應該考慮自動刪除這條通知。
同樣的,使用者查看過的聊天訊息或郵件,也應該讓使用者不必手動操作就移除這些通知。
6. 為通知提供預覽
提供一段簡短的文本作為通知的預覽可以讓使用者大致瞭解通知的內容,從而協助使用者決定是否立刻查看該通知。
7. 讓使用者決定是否顯示通知
使用者可能對頻繁出現的通知感到厭煩,所以應該讓使用者決定是否顯示通知。因此,在應用程式的設定中應該讓使用者可以取消通知。
8. 使用不同的表徵圖
為了讓使用者在通知欄看一眼就能知道是哪個應用程式發出的通知,應該採用有自己特色的表徵圖。所以在設計應用程式的表徵圖的時候,應該注意與其他Android應用的通知表徵圖有比較明顯的區別。
但需要注意的是不要用顏色來區分,因為通知表徵圖通常都是黑白的。
三、通知的導航機制
1. 單條通知與合并通知
如果使用者點擊了一條通知,此時應該將相關的應用程式開啟到可以對通知中提到的內容進行操作的狀態。例如使用者收到一封新郵件的通知,使用者點開該通知後應該去到這封郵件的內容頁。
因為同類通知會被合并,如果使用者點擊了一個合并的通知,應該去到列表頁面(內容頁的上一層級)。在下面的例子中,使用者點開一條合并的新郵件通知後,進入了收件匣介面。
2. 間接通知
如果應用程式需要同時展示多個事件的資訊,可以使用一條通知將使用者指引到一個中間介面。這個介面會展示這些事件,並為使用者提供進入應用程式的入口。這種類型的通知被稱為間接通知。
例如一個使用者在Gmail中收到了Calendar發出的一條間接通知。點擊這條通知後開啟一個中間介面(calendar interstitial),這個介面下顯示了幾個事件的提醒,在這個介面點“返回”鍵會回到Gmail,但是如果使用者點擊了某個事件提醒,就會離開這個中間介面並開啟Calendar應用程式以顯示這個事件的詳細內容。在這個事件的詳細內容的介面下,點“向上”和“返回”都會去到Calendar應用的首頁。
在間接通知的中間介面點“返回”會回到觸發該通知的介面,返迴路徑中不會被插入其他介面。一旦使用者通過中間介面進入了應用程式,“向上”和“返回”的邏輯就與標準通知一樣了:在應用程式之間進行導航,而不會返回到中間介面。
關於間接通知的詳細內容請查看百度MUX翻譯的《Android Design》的模式Patterns—-導航Navigation章節。
3. 彈出通知
彈出通知會繞過抽屜通知直接出現在使用者面前。一般情況下很少使用,只在需要及時地反饋並且必須打斷使用者的場合下才會使用。例如Talk應用使用這種形式的通知來提醒使用者有好友邀請他加入視訊交談,因為這個邀請會在幾秒後自動失效。
對於導航行為,彈出通知嚴格遵循間接通知的中間介面的導航邏輯。點“返回”會關閉彈出通知。如果使用者從這條彈出通知進入了發出通知的應用程式,“向上”和“返回”的邏輯會與標準通知的邏輯保持一致,在應用程式內進行導航。
關於間接通知的詳細內容請查看百度MUX翻譯的《Android Design》的模式Patterns—-導航Navigation章節。
四、通知的相關互動
1. 通知抽屜
預設情況下,待處理的通知是以表徵圖形式顯示在狀態列中,從螢幕上方向下滑即可開啟通知抽屜。
最近的通知排在最前面,點擊一條通知會將其應用程式開啟到與這條通知相關的介面。
在一條通知上向左或向右橫劃即可移除該通知。
在Android 4.0的平板電腦中,通知欄則被整合到底部的系統欄裡,在通知區域的任意位置點擊即可開啟通知抽屜。
2. 進行中的通知
有一些通知是讓使用者瞭解後台正在啟動並執行進程。例如現正播放的音樂播放器、正在後台啟動並執行省電程式、正在保護系統的安全軟體等。另外也可以對下載上傳、視頻編碼這種期間較長的任務提供反饋。這種進行中的通知是不可以被移除的。
3. Dialog和Toast用作反饋
如果某個應用程式沒有在當前螢幕運行,它就不應該彈出對話方塊(Dialog)和提示條(Toast)。對話方塊和提示條應該是使用者在當前應用程式下執行操作時,用來提供即時的操作反饋的。比如對話方塊可以讓使用者知道某個操作的危險後果,而提示條可以讓使用者知道某個操作已成功執行。
五、總結
在Android平台設計應用程式的通知訊息時應該明確在哪些情境下使用通知;不同的情境顯示什麼類型的通知。在設計的時候還要注意通知的私人化、導航邏輯、清理機制、同類通知的合并、表徵圖的設計等。為避免對使用者造成騷擾,還應該在應用程式的設定中增加對是否顯示通知訊息的設定。
從較早版本的Android系統開始,就具備了比較成熟的通知系統,新版iOS系統也參考了類似的設計。所以充分利用Android的通知系統,一定可以讓使用者對你的應用程式了如指掌。
另附上MUX翻譯的最新版《Android Design》,歡迎大家下載閱讀。
譯文:http://mux.baidu.com/img/97/AndroidDesign-BaiduMUX.pdf
原文:http://developer.android.com/design/
文章來源:百度MUX