通知為人們提供即時(shí)的重要信息和功能。人們能在多種情況下收到通知,例如在鎖屏界面中,或者在使用應(yīng)用時(shí),或者訪問(wèn)通知中心時(shí)。
通知中心有兩種視圖:通知(Notifications )和最近(Today)。
最近視圖顯示了一個(gè)可編輯部件列表。最近窗口部件是一個(gè)應(yīng)用擴(kuò)展,它顯示了少量及時(shí)和重要的信息或功能,這些信息或功能則是由用戶所關(guān)注的應(yīng)用所提供。舉例來(lái)說(shuō),日歷窗口部件只顯示了當(dāng)天的事件。點(diǎn)擊其中的一個(gè)事件可以喚起日歷應(yīng)用,去打開該事件,用戶接下來(lái)便可以在日歷應(yīng)用中編輯該事件或管理其他的事件。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notification_ctr_today_2x.png" alt="" />
通知視圖會(huì)顯示那些用戶感興趣的應(yīng)用所發(fā)出的最新通知。用戶可以訪問(wèn)設(shè)置(Settings)中相應(yīng)應(yīng)用的部分來(lái)設(shè)置是否要在通知中心顯示該應(yīng)用的通知。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notification_ctr_notifications_2x.png" alt="" />
當(dāng)用戶感興趣的事件發(fā)生時(shí),iOS 應(yīng)用可以通過(guò)通知讓用戶知道,例如:
在 iOS 8 及以上的版本中,應(yīng)用可以定義用戶在通知中的操作。例如,用戶可以在待辦事項(xiàng)應(yīng)用的通知中就標(biāo)記某事項(xiàng)已完成,而無(wú)需再打開應(yīng)用。
iOS 定義了兩種類型的通知。
注意:應(yīng)用擴(kuò)展可能會(huì)要求遠(yuǎn)程通知發(fā)送到它的容器應(yīng)用中。在這種情況下,容器應(yīng)用常常會(huì)在后臺(tái)運(yùn)行來(lái)處理通知。想要了解更多關(guān)于應(yīng)用擴(kuò)展的內(nèi)容,請(qǐng)參見應(yīng)用擴(kuò)展。
如果當(dāng)你的應(yīng)用正在前臺(tái)運(yùn)行時(shí)收到了本地或遠(yuǎn)程的通知,你就應(yīng)該以你的應(yīng)用所特有的方式將信息傳達(dá)給你的用戶。
為了確保用戶能夠自定義他們的通知體驗(yàn),你應(yīng)該盡可能多地支持以下的通知類型:
注意:在 iOS 8 及之后的版本中,你必須對(duì)所有你想發(fā)送給用戶的通知類型進(jìn)行注冊(cè)。當(dāng)你第一次進(jìn)行注冊(cè)操作時(shí),用戶會(huì)收到到一個(gè)警告,他們可以在其中操作決定接受或拒絕所有來(lái)自你應(yīng)用的通知。無(wú)論用戶這時(shí)的選擇是什么,他們應(yīng)始終能訪問(wèn)你應(yīng)用的設(shè)置來(lái)更改此項(xiàng)偏好,或者設(shè)置他們想要接收的通知類型。
橫條(banner)是一個(gè)小而透明的視圖,會(huì)出現(xiàn)在屏幕頂部并在幾秒后消失。用戶還可以在鎖屏中以及通知中心的通知視圖中,看到相應(yīng)形式的橫條。在橫條中,iOS 會(huì)顯示通知的內(nèi)容和應(yīng)用的小圖標(biāo)(欲了解更多關(guān)于小圖標(biāo)的內(nèi)容,請(qǐng)參見 應(yīng)用圖標(biāo))。用戶點(diǎn)擊橫條來(lái)解除它并切換到發(fā)送該通知的應(yīng)用。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notif_ctr_banner_2x.png" alt="" />
除了默認(rèn)的點(diǎn)擊動(dòng)作之外,當(dāng)用戶輕掃橫條時(shí),你還可以定義兩個(gè)動(dòng)作按鈕。點(diǎn)擊通知?jiǎng)幼靼粹o來(lái)隱藏橫條的顯示并啟動(dòng)你的應(yīng)用(可能是在后臺(tái))來(lái)執(zhí)行動(dòng)作。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notif_ctr_banner_actions_2x.png" alt="" />
通知提示框( alert )是顯示在屏幕上的標(biāo)準(zhǔn)提示框視圖,需要與用戶交互后才會(huì)隱藏。當(dāng)用戶點(diǎn)擊Options按鈕后,你需要提供并顯示通知消息和一個(gè)默認(rèn)動(dòng)作,或最多四個(gè)特定動(dòng)作。提示框的背景樣式不能做修改。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notif_ctr_alert_2x.png" alt="" />
當(dāng)用戶點(diǎn)擊提示框中的一個(gè)默認(rèn)或自定義動(dòng)作按鈕,與此同時(shí) iOS 會(huì)解除提示框并運(yùn)行你的應(yīng)用(可能是在后臺(tái))。點(diǎn)擊關(guān)閉或確定按鈕會(huì)在不用打開應(yīng)用的情況下解除提示框。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notif_ctr_alert_actions_2x.png" alt="" />
小氣泡( badge )是一個(gè)顯示未讀通知數(shù)量的紅色小圓(小氣泡顯示在應(yīng)用圖標(biāo)的右上角)。小氣泡的大小和顏色不能做修改。
http://wiki.jikexueyuan.com/project/ios-human-interface-guidelines/images/notif_ctr_badge_2x.png" alt="" />
橫幅、警告框和小氣泡這三種通知都可以使用自定義或系統(tǒng)提供的聲音。
在通知中謹(jǐn)慎使用清除性的操作。要確保用戶了解足夠的上下文背景,以避免發(fā)生他們意想不到的后果。為了幫助用戶區(qū)分你所定義的清除動(dòng)作,iOS會(huì)用紅色來(lái)顯示它。一些情況下,在應(yīng)用執(zhí)行清除操作之前,應(yīng)該請(qǐng)求用戶進(jìn)行確認(rèn)。舉個(gè)例子,如果你在鎖屏的橫條(banner)中提供了一個(gè)清除操作,那么就應(yīng)確保只有設(shè)備的主人才能執(zhí)行該操作(你需要在代碼上實(shí)現(xiàn)這一需求)。
為每個(gè)動(dòng)作按鈕提供自定義標(biāo)題。創(chuàng)建一個(gè)簡(jiǎn)短的標(biāo)題來(lái)描述清楚將要發(fā)生的動(dòng)作。例如,游戲可能會(huì)使用“Play”作為標(biāo)題來(lái)表明,點(diǎn)擊這個(gè)按鈕會(huì)打開應(yīng)用來(lái)進(jìn)行游戲。確保標(biāo)題:
不要為同一個(gè)事件重復(fù)發(fā)送通知。用戶可以選擇處理通知項(xiàng);通知項(xiàng)在用戶未處理前會(huì)一直顯示。如果為同一事件重復(fù)發(fā)送通知,這將會(huì)導(dǎo)致通知中心充滿通知,而用戶有可能會(huì)因此關(guān)閉你應(yīng)用的通知。
不要在通知消息中包含你的應(yīng)用名稱。自定義信息會(huì)在提示框和橫條中顯示,也會(huì)在通知中心中以通知的形式顯示。你無(wú)需在自定義信息中顯示你的應(yīng)用名稱,因?yàn)閕OS會(huì)在顯示信息的同時(shí)自動(dòng)顯示應(yīng)用名稱。
為了使本地或遠(yuǎn)程通知信息更有作用,你應(yīng)該:
注意:在必要的情況下,iOS 會(huì)縮短你的消息以便能在各種通知發(fā)送樣式下顯示;為了最好的效果,你不應(yīng)主動(dòng)縮減你的消息。
保持氣泡內(nèi)容總是最新。在用戶已經(jīng)處理了新消息時(shí),如何及時(shí)的更新氣泡就顯得尤為重要,這樣才不會(huì)讓用戶以為又有額外的新消息到達(dá)。注意,當(dāng)小氣泡內(nèi)容設(shè)置為 0 時(shí),也會(huì)導(dǎo)致通知中心中相應(yīng)的通知項(xiàng)被移除。
重要:不要將小氣泡用作通知以外的其他用途。記住,用戶能夠關(guān)閉應(yīng)用的小氣泡,這時(shí)你將無(wú)法確定他們是否看到了小氣泡中的內(nèi)容。
當(dāng)收到通知時(shí),提供用戶可以選擇聽到的音效。當(dāng)人們沒(méi)有在看屏幕的時(shí)候,可以通過(guò)音效獲取他們的注意。例如,日歷應(yīng)用可能會(huì)在顯示提示框的同時(shí)播放一個(gè)音效來(lái)提醒人們一個(gè)即將到來(lái)的事件。再如,協(xié)作任務(wù)管理應(yīng)用可能會(huì)在小氣泡更新時(shí)播放一個(gè)音效來(lái)告知某個(gè)遠(yuǎn)程協(xié)同的同事已經(jīng)完成了某個(gè)任務(wù)。
你可以提供自定義的音效,或者使用內(nèi)置的提示音。如果你創(chuàng)建了自定義音效,請(qǐng)確保它是簡(jiǎn)短的、有特色的并且是經(jīng)由專業(yè)制作的。注意到,當(dāng)通知交付時(shí),你無(wú)法通過(guò)編程實(shí)現(xiàn)設(shè)備振動(dòng),因?yàn)橛脩舨啪哂性O(shè)置提示到達(dá)時(shí)是否振動(dòng)的權(quán)限。