通知

2018-08-12 21:55 更新

通知

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

今天視圖顯示了一組可編輯的部件。今天部件是一個應(yīng)用擴展,顯示了少量及時和重要的信息或功能,這些信息或功能則是由用戶所關(guān)注的應(yīng)用所提供。舉例來說,日歷部件只顯示了今天的事件。點擊日歷部件中的一個事件可以喚起日歷應(yīng)用,并打開該事件,用戶接下來可以編輯該事件或管理其他的事件。想要了解更多關(guān)于設(shè)計今天部件的內(nèi)容,請參見今天部件。

通知視圖會顯示用戶感興趣的應(yīng)用所發(fā)出的最近通知。用戶可以在設(shè)置(Settings)中來設(shè)置是否在通知中心顯示該應(yīng)用的通知。 iOS 應(yīng)用可以使用通知來讓人們知道一些有趣的事情是什么時候發(fā)生的,例如:

  • 收到一條消息
  • 事件即將發(fā)生
  • 有新的數(shù)據(jù)可下載了
  • 某些狀態(tài)發(fā)生了變化

在 iOS8 及之后的版本中,應(yīng)用可以定義用戶在通知中的操作。例如,用戶可以在待辦事項應(yīng)用的通知中就標(biāo)記該事項已完成,而無需額外打開應(yīng)用。 iOS 定義了兩種類型的通知。

  • 本地通知(local notification)由應(yīng)用安排待發(fā)送,最終通過 iOS 發(fā)送到同一設(shè)備中,無論該應(yīng)用當(dāng)前是否正在后臺運行。例如,日歷或待辦事項應(yīng)用可以安排一條本地通知來提醒人們一個即將到來的會議或者日期。

  • 遠程通知(remote notification)(也稱為推送通知(push notification))是由應(yīng)用的遠程服務(wù)器通過蘋果推送通知服務(wù)來發(fā)送的,這類通知最終會被推送到所有安裝了該應(yīng)用的設(shè)備。例如,一款在線競技類的游戲,用戶可以和其他玩家競賽的,可以更新所有玩家的最新狀態(tài)。 注意:應(yīng)用擴展可能會要求遠程通知必須發(fā)送到它的容器應(yīng)用。在這種場景下,容器應(yīng)用常常會在后臺運行來處理通知。想要了解更多關(guān)于應(yīng)用擴展的內(nèi)容,請參見應(yīng)用擴展。

如果當(dāng)你的應(yīng)用正在后臺運行時收到了本地或遠程的通知,你就應(yīng)該以你的應(yīng)用所特有的方式將信息傳達給你的用戶。 為了確保用戶能夠自定義他們的通知體驗,你應(yīng)該盡可能多地支持以下的通知類型:

  • 橫幅(Banner)
  • 警告框(Alert)
  • 小氣泡(Badge)
  • 聲音(Sound)

注意:在 iOS8 及之后的版本中,你必須對所有你想發(fā)送給用戶的通知類型進行注冊。當(dāng)你第一次進行注冊動作時,用戶會遇到一個警告框,他們可以在其中操作來決定允許或拒絕所有來自你的應(yīng)用的通知。不管用戶選擇的結(jié)果是什么,他們應(yīng)始終能訪問應(yīng)用的設(shè)置來更改此項設(shè)置,或者設(shè)置他們想要接收的通知類型。

橫幅(banner)是一個小而透明的視圖,會出現(xiàn)在屏幕頂部并在幾秒后消失。用戶還可以看到在鎖屏當(dāng)中的橫幅以及在通知中心中以通知形式出現(xiàn)的橫幅。在橫幅中,iOS 會顯示通知的內(nèi)容和應(yīng)用的小圖標(biāo)(欲了解更多關(guān)于小圖標(biāo)的內(nèi)容,請參見 App Icon)。用戶點擊橫幅來隱藏顯示并切換到發(fā)送通知的應(yīng)用。

除了默認的點擊動作之外,當(dāng)用戶輕掃橫幅時,你還可以定義兩個動作按鈕。點擊通知動作按鈕來隱藏橫幅的顯示并啟動你的應(yīng)用(可能是在后臺)來執(zhí)行動作。

通知警告框是顯示在屏幕上的標(biāo)準(zhǔn)警告框視圖,需要用戶操作后才會隱藏。當(dāng)用戶點擊 Options 按鈕后,你需要提供并顯示通知消息以及任何一個默認動作,或最多四個特定動作。警告框的背景樣式不能做修改。 當(dāng)用戶點擊警告框中的一個默認或自定義動作按鈕時,iOS 會同時隱藏警告框并運行你的應(yīng)用(可能是在后臺)。點擊關(guān)閉或確定按鈕會隱藏警告框而不打開應(yīng)用。

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

在通知中謹慎使用具破壞性的動作。要確定用戶有足夠的上下文來避免意想不到的后果。為了幫助用戶區(qū)分你所定義的破壞性動作,iOS 會用紅色來顯示它。有時候,在應(yīng)用執(zhí)行破壞性動作之前,應(yīng)該請求用戶進行確認。舉個例子,如果在鎖屏的橫幅(banner)中提供了一個破壞性動作,那么就應(yīng)確保只有設(shè)備的主人才能執(zhí)行該動作(你需要在代碼上實現(xiàn)這一需求)。

為每個動作按鈕提供自定義標(biāo)題。創(chuàng)建一個簡短的標(biāo)題來描述清楚將要發(fā)生的動作。例如,游戲可能會使用“Play”作為標(biāo)題來表明,點擊這個按鈕會打開應(yīng)用來進行游戲。確保標(biāo)題:

  • 使用標(biāo)題樣式的大小寫(title-style capitalization)
  • 足夠簡短,能不被截斷地顯示在按鈕內(nèi)(也應(yīng)確保測試各種語言文字的標(biāo)題顯示正常)

不要為同一個事件重復(fù)發(fā)送通知。用戶可以選擇處理通知項;通知項在用戶未處理前會一直顯示。如果為同一事件重復(fù)發(fā)送通知,通知中心列表中會滿是通知,用戶就有可能會關(guān)閉你的應(yīng)用的通知。

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

  • 專注于信息而不是用戶的行為。避免告訴人們點擊哪個按鈕或如何打開你的應(yīng)用
  • 足夠簡短,一兩行就可以顯示完整。較長的信息對于用戶來說很難進行快速閱讀,也會造成在警告框中需要滾動才能查看完整
  • 使用句式大小寫(sentence-style capitalization),并配以合適的結(jié)束語句符號??赡艿臅r候,可以使用一個整句 注意:如有必要,iOS 會縮短你的消息以便能在各種通知發(fā)送樣式下顯示;為了最好的效果,你不應(yīng)主動縮減你的消息。

保持小氣泡的內(nèi)容是最新的。當(dāng)用戶注意到新信息時,即時更新小氣泡非常重要,這樣用戶就不會覺得收到了額外的通知。注意,當(dāng)小氣泡為0時也會移除通知中心中所有對應(yīng)的通知項。

重要:不要使用小氣泡做通知以外的用途。記住,用戶能夠關(guān)閉應(yīng)用的小氣泡,所以你無法確定他們一定能看到小氣泡中的內(nèi)容。

當(dāng)收到通知時,提供用戶可以選擇聽到的音效。當(dāng)人們沒有在看屏幕的時候,可以通過音效獲取他們的注意。例如,日歷應(yīng)用可能會在顯示警告框的同時播放一個音效來提醒人們一個即將到來的事件。再如,協(xié)作任務(wù)管理應(yīng)用可能會在小氣泡更新時播放一個音效來告知某個遠程協(xié)同的同事已經(jīng)完成了某個任務(wù)。

你可以提供自定義的音效,或者使用內(nèi)置的警告音。如果你創(chuàng)建了自定義音效,請確保它是簡短的、有特色的并且是經(jīng)由專業(yè)制作的。(想要了解更多關(guān)于音效的技術(shù)需求,請參閱 Local and Remote Notification Programming Guide 中的 Preparing Custom Alert Sounds。)注意,當(dāng)通知發(fā)送后,你無法以編程方式來觸發(fā)設(shè)備的震動,因為用戶對于警告框是否伴隨震動擁有支配權(quán)。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號