淺析Android 4.0的通知系統(tǒng)(附Android 4.0設(shè)計指南全文翻譯)
![](http://image.woshipm.com/wp-files/img/49.jpg)
通過手機的通知系統(tǒng),可以將應(yīng)用程序的一些重要消息告知給用戶。流暢、舒適、友好的應(yīng)用程序離不開精心設(shè)計的消息提醒機制。但是并不是所有的通知都是用戶想看的,否則只會給用戶造成騷擾,所以要謹慎使用通知。
在對《Android Design》進行翻譯時發(fā)現(xiàn):Android 系統(tǒng)已經(jīng)提出了一些關(guān)于通知消息的設(shè)計建議,故在此分享給大家。
一、何時使用通知?
通知主要用于對時間敏感(Time Sensitive)的事件,尤其是涉及他人(Involve another person)的同步事件。例如下面的 Gtalk 和日歷發(fā)出的通知就是時間敏感,且與人相關(guān)的事件。
那么什么時候又不應(yīng)該使用通知呢?官方的建議是:
二、通知的設(shè)計指南
1. 使其私有化
其他用戶發(fā)過來的通知應(yīng)該在通知里包含用戶的頭像(Icon/Photo),還要顯示通知的標題(Title)、消息內(nèi)容(Message)、時間戳(Timestamp),以及應(yīng)用程序的圖標(Secondary Icon)。
2. 合并同類通知
如果一個應(yīng)用程序發(fā)出了多個相同類型的通知,而且這些通知都還沒被處理的話(被處理的通知會被移出通知抽屜),那么請將相同類型的通知合并為一個。
合并后的通知會有一個總結(jié)性的描述,并且能讓用戶知道一共合并了多少條通知(Number Pending)。
3. 對時間敏感事件的時間戳
默認的系統(tǒng)通知會在通知右上角打上時間戳,如果你認為顯示時間戳對你的通知是沒有意義的,那你可能就要重新考慮是否值得為這條消息創(chuàng)建一條通知了。如果這條通知確實足夠重要,再決定是否不顯示時間戳。
常見的需要顯示時間戳的通知是通訊通知,如 Email、短信、聊天消息這種,用戶需要通過時間戳來理解消息的上下文。
4. ?通知相關(guān)的導(dǎo)航機制
如果用戶點擊了一條通知,此時應(yīng)該將相關(guān)的應(yīng)用程序打開到可以對通知中提到的內(nèi)容進行操作的狀態(tài)。但如果用戶點擊了一個合并的通知,應(yīng)該去到列表頁面(內(nèi)容頁的上一層級),后面第三部分會詳細闡述。
5. ?自我清理
有些通知會在某個時間點出現(xiàn)告知用戶一些相關(guān)的信息和提示,但是如果過了那個時間點,這個通知可能對用戶來說就不重要了,此時就應(yīng)該考慮自動刪除這條通知。
同樣的,用戶查看過的聊天消息或郵件,也應(yīng)該讓用戶不必手動操作就移除這些通知。
6. ?為通知提供預(yù)覽
提供一段簡短的文本作為通知的預(yù)覽可以讓用戶大致了解通知的內(nèi)容,從而幫助用戶決定是否立刻查看該通知。
7. ?讓用戶決定是否顯示通知
用戶可能對頻繁出現(xiàn)的通知感到厭煩,所以應(yīng)該讓用戶決定是否顯示通知。因此,在應(yīng)用程序的設(shè)置中應(yīng)該讓用戶可以取消通知。
8. ?使用不同的圖標
為了讓用戶在通知欄看一眼就能知道是哪個應(yīng)用程序發(fā)出的通知,應(yīng)該采用有自己特色的圖標。所以在設(shè)計應(yīng)用程序的圖標的時候,應(yīng)該注意與其他 Android 應(yīng)用的通知圖標有比較明顯的區(qū)別。
但需要注意的是不要用顏色來區(qū)分,因為通知圖標通常都是黑白的。
三、通知的導(dǎo)航機制
1. ?單條通知與合并通知
如果用戶點擊了一條通知,此時應(yīng)該將相關(guān)的應(yīng)用程序打開到可以對通知中提到的內(nèi)容進行操作的狀態(tài)。例如用戶收到一封新郵件的通知,用戶點開該通知后應(yīng)該去到這封郵件的內(nèi)容頁。
因為同類通知會被合并,如果用戶點擊了一個合并的通知,應(yīng)該去到列表頁面(內(nèi)容頁的上一層級)。在下面的例子中,用戶點開一條合并的新郵件通知后,進入了收件箱界面。
2. ?間接通知
如果應(yīng)用程序需要同時展示多個事件的信息,可以使用一條通知將用戶指引到一個中間界面。這個界面會展示這些事件,并為用戶提供進入應(yīng)用程序的入口。這種類型的通知被稱為間接通知。
例如一個用戶在 Gmail 中收到了 Calendar 發(fā)出的一條間接通知。點擊這條通知后打開一個中間界面(calendar interstitial),這個界面下顯示了幾個事件的提醒,在這個界面點“返回”鍵會回到 Gmail,但是如果用戶點擊了某個事件提醒,就會離開這個中間界面并打開 Calendar 應(yīng)用程序以顯示這個事件的詳細內(nèi)容。在這個事件的詳細內(nèi)容的界面下,點“向上”和“返回”都會去到 Calendar 應(yīng)用的首頁。
在間接通知的中間界面點“返回”會回到觸發(fā)該通知的界面,返回路徑中不會被插入其他界面。一旦用戶通過中間界面進入了應(yīng)用程序,“向上”和“返回”的邏輯就與標準通知一樣了:在應(yīng)用程序之間進行導(dǎo)航,而不會返回到中間界面。
關(guān)于間接通知的詳細內(nèi)容請查看百度 MUX 翻譯的《Android Design》的模式 Patterns—-導(dǎo)航 Navigation 章節(jié)。
3. 彈出通知
彈出通知會繞過抽屜通知直接出現(xiàn)在用戶面前。一般情況下很少使用,只在需要及時地反饋并且必須打斷用戶的場合下才會使用。例如 Talk 應(yīng)用使用這種形式的通知來提醒用戶有好友邀請他加入視頻聊天,因為這個邀請會在幾秒后自動失效。
對于導(dǎo)航行為,彈出通知嚴格遵循間接通知的中間界面的導(dǎo)航邏輯。點“返回”會關(guān)閉彈出通知。如果用戶從這條彈出通知進入了發(fā)出通知的應(yīng)用程序,“向上”和“返回”的邏輯會與標準通知的邏輯保持一致,在應(yīng)用程序內(nèi)進行導(dǎo)航。
關(guān)于間接通知的詳細內(nèi)容請查看百度 MUX 翻譯的《Android Design》的模式 Patterns—-導(dǎo)航 Navigation 章節(jié)。
四、通知的相關(guān)交互
1. 通知抽屜
默認情況下,待處理的通知是以圖標形式顯示在狀態(tài)欄中,從屏幕上方向下滑即可打開通知抽屜。
最近的通知排在最前面,點擊一條通知會將其應(yīng)用程序打開到與這條通知相關(guān)的界面。
在一條通知上向左或向右橫劃即可移除該通知。
在 Android 4.0 的平板電腦中,通知欄則被集成到底部的系統(tǒng)欄里,在通知區(qū)域的任意位置點擊即可打開通知抽屜。
2. 進行中的通知
有一些通知是讓用戶了解后臺正在運行的進程。例如正在播放的音樂播放器、正在后臺運行的省電程序、正在保護系統(tǒng)的安全軟件等。另外也可以對下載上傳、視頻編碼這種持續(xù)時間較長的任務(wù)提供反饋。這種進行中的通知是不可以被移除的。
3. ?Dialog 和 Toast 用作反饋
如果某個應(yīng)用程序沒有在當前屏幕運行,它就不應(yīng)該彈出對話框(Dialog)和提示條(Toast)。對話框和提示條應(yīng)該是用戶在當前應(yīng)用程序 下執(zhí)行操作時,用來提供即時的操作反饋的。比如對話框可以讓用戶知道某個操作的危險后果,而提示條可以讓用戶知道某個操作已成功執(zhí)行。
五、總結(jié)
在 Android 平臺設(shè)計應(yīng)用程序的通知消息時應(yīng)該明確在哪些場景下使用通知;不同的場景顯示什么類型的通知。在設(shè)計的時候還要注意通知的私有化、導(dǎo)航邏輯、清理機制、同 類通知的合并、圖標的設(shè)計等。為避免對用戶造成騷擾,還應(yīng)該在應(yīng)用程序的設(shè)置中增加對是否顯示通知消息的設(shè)置。
從較早版本的 Android 系統(tǒng)開始,就具備了比較成熟的通知系統(tǒng),新版 iOS 系統(tǒng)也參考了類似的設(shè)計。所以充分利用 Android 的通知系統(tǒng),一定可以讓用戶對你的應(yīng)用程序了如指掌。
另附上MUX翻譯的最新版《Android Design》,歡迎大家下載閱讀。
譯文:http://mux.baidu.com/img/97/AndroidDesign-BaiduMUX.pdf
原文:http://developer.android.com/design/
來源:http://mux.baidu.com/?p=3183
- 目前還沒評論,等你發(fā)揮!