(57)【特許請求の範囲】
【請求項１】
方法であって、
コンピューティング装置が、１つ以上の通知ソースの各々に対して標準化された設定画面を提示すること、
前記コンピューティング装置が、前記標準化された設定画面への入力に応じて、前記１つ以上の通知ソースの各々によって定義された通知チャネルのセットを決定すること、を備え、各通知チャネルは、前記１つ以上の通知ソースの各々によって定義された１つ以上のパラメータを有し、
前記方法は、さらに、
前記コンピューティング装置が、前記１つ以上の通知ソースのうちの特定の通知ソースによって生成された通知を受信すること、
前記コンピューティング装置が、前記通知チャネルのセットから、前記特定の通知ソースによって前記通知に割り当てられた特定の通知チャネルを決定すること、及び
前記コンピューティング装置が、前記特定の通知チャネルの１つ以上のパラメータに従って前記通知のしるしを出力することを備える、方法
【請求項２】
前記特定の通知チャネルを示すグラフィカル要素を含む通知バッジを決定すること、及び
上記コンピューティング装置が、前記特定の通知ソースを起動するためのグラフィカル要素にて前記通知バッジを表示することをさらに備える、請求項１に記載の方法。
【請求項３】
前記特定の通知チャネルの前記１つ以上のパラメータは、前記通知の前記しるしが、可聴アラート、視覚的アラート、触覚的アラート、若しくは音声アラートのうちの１つ以上を含むかどうかを定義し、前記特定の通知チャネルの前記１つ以上のパラメータは、前記可聴アラート、前記視覚的アラート、前記触覚的アラート若しくは前記音声アラートの１つ以上の属性を定義する、請求項１又は２に記載の方法。
【請求項４】
前記通知の前記しるしは視覚的アラートを含み、前記１つ以上のパラメータは、前記視覚的アラートの色、前記視覚的アラートのアイコン、前記視覚的アラートのグラフィカル要素、前記視覚的アラートのフォント、又は前記視覚的アラートのフォントサイズのうちの少なくとも１つを含む、請求項１または２に記載の方法。
【請求項５】
前記通知の前記しるしは可聴アラートを含み、前記１つ以上のパラメータは、前記可聴アラートの着信音又は音の属性のうちの少なくとも１つを含む、請求項１または２に記載の方法。
【請求項６】
前記通知の前記しるしは触覚的アラートを含み、前記１つ以上のパラメータは、前記触覚的アラートのバイブレーションパターン又はバイブレーション強度のうちの少なくとも１つを含む、請求項１または２に記載の方法。
【請求項７】
前記１つ以上のパラメータは、前記通知の重要度又は優先度のレベルのうちの少なくとも１つを含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記通知は第１の通知であり、前記特定の通知チャネルは第１の通知チャネルであって、
前記コンピューティング装置が、前記第１の通知とは異なる前記特定の通知ソースによって生成される第２の通知を受信すること、
前記コンピューティング装置が、前記第１の通知チャネルとは異なる、前記第２の通知に割り当てられた通知チャネルの前記セットから第２の通知チャネルを決定すること、
前記コンピューティング装置が、前記第１の通知チャネルの前記１つ以上のパラメータとは異なる、前記第２の通知チャネルの１つ以上のパラメータを決定すること、及び
前記コンピューティング装置が、前記第２の通知チャネルの前記１つ以上のパラメータに従って、前記第２の通知のしるしを出力することをさらに備える、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
出力装置、及び
請求項１〜８のいずれか１項に記載の方法を実行するように構成されている少なくとも１つのプロセッサを備える、コンピューティング装置。
【請求項１０】
実行されたときにコンピューティング装置の少なくとも１つのプロセッサに請求項１〜８のいずれか１項に記載の方法を実行させる命令を備える、コンピュータ読み取り可能な記憶媒体。
【請求項１１】
請求項１〜８のいずれか１項に記載の方法をコンピューティング装置に実行させる、コンピュータプログラム。
【請求項１２】
請求項１〜８のいずれか１項に記載の方法を実行するための手段を備える、システム。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
いくつかのアプリケーション又はサービスは、新しい若しくは興味深い情報に対して様々な理由でユーザに注意喚起するために、「通知」を生成し得る。コンピューティング装置は、とりわけ、グラフィカルユーザインタフェースの通知領域における通知メッセージ（例えば、通知ペイン、通知ウィンドウ、通知シェード）及び／若しくは「通知バッジ」として、コンピューティング装置にて実行されているアプリケーション、又はコンピューティング装置がアクセス可能なサービスから受信した通知のグラフィカルなしるしをディスプレイに表示し得る。通知領域に含まれる各通知メッセージは、１つ以上のグラフィカル要素（例えば、アイコン、実行可能な要素）、テキスト（例えば、タイトル、詳細情報）、及び／又は他の内容から構成され得る。通知バッジは、通知領域に表示されるのではなく、通常、起動アイコンと重なるか若しくは隣接するグラフィカル要素として表示され、起動アイコンに関連付けられている特定のアプリケーション又はサービスに対して現在保留中の（未表示、未読、未確認、又は未消去などの）通知の総数を示す。いくつかのコンピューティング装置は、大量の通知を受信する。そのため、それらの表示（通知領域における複数のメッセージ及び／又は複数の通知バッジとしてかどうかに関わらず）は、不要な混乱、乱雑さ、又は煩わしさを生じ得る。
【発明の概要】
【課題を解決するための手段】
【０００２】
概要
一般に、本開示の技法において、コンピューティング装置のグラフィカルユーザインターフェース（ＧＵＩ）の一部として通知を管理し、通知のしるしを出力することを対象としている。コンピューティング装置は、コンピューティング装置にて実行されているアプリケーション又はコンピューティング装置がアクセス可能なサービスによって生成された通知データ（本明細書では単に「通知」と呼ぶ）を受信し得る。当該アプリケーション又はサービスは、本明細書では「通知ソース」とも呼ばれる。コンピューティング装置が通知を受信すると、コンピューティング装置はその通知を処理し、コンピューティング装置のＧＵＩの一部として基礎となる通知のグラフィカルなしるしをディスプレイに表示する。
【０００３】
通知のグラフィカルなしるしは、通知を生成したアプリケーション若しくはサービスの起動アイコンに隣接して、又はその一部としてディスプレイに表示される通知バッジの形をとり得る。しかしながら、起動アイコンに関連付けられているアプリケーション又はサービスに対して現在保留中の通知の総数を単に示す典型的な通知バッジとは異なり、例示的な通知バッジは、保留中の通知（複数可）の内容を反映し得る。例えば、通知がコンピューティング装置のユーザに特定の送信者からのメッセージに対して注意喚起するためのものである場合、バッジアイコンは特定の送信者に関連する、グラフィック（例えばアイコン）又は画像であり得る。ユーザは、コンピューティング装置との対話の結果についてさらに知らされることがあり得、その結果、そうでなければユーザに利用可能ではない知識に照らして決定を下すことができる。したがって、通知の内容を反映する際に、バッジアイコンは、そうでなければ生じるであろう１つ以上のあいまいさを解決することによって、コンピューティング装置との効率的な対話を容易にし得る。装置の処理負荷の軽減は、それにより達成され得る。保留中の通知の内容を反映した通知バッジを表示することは、いくつかのユーザが他の種類の通知バッジを見ることから持ち得る不安及び／又は混同を軽減し得る。
【０００４】
特定の起動アイコン又はその近くにて通知バッジを表示した後、コンピューティング装置は、特定の起動アイコンを選択するユーザ入力を検出し得る。特定の起動アイコンを選択する１つのタイプのユーザ入力（例えばタップ入力）は、コンピューティング装置にアプリケーションを実行させるか、又は起動アイコンに関連するサービスにアクセスさせ得るが、特定の起動アイコンを選択する異なるタイプのユーザ入力（例えば長押し）は、通知バッジに関連付けられた個々の通知のうちの１つ以上のメッセージプレビューをコンピューティング装置に（例えば、選択されている起動アイコンの近くに）表示させ得る。例えば、コンピューティング装置が、複数の送信者から受信した複数のメッセージに対してコンピューティング装置のユーザに注意喚起するための複数の通知を受信した場合、コンピューティング装置は、複数の通知のそれぞれについてメッセージプレビューにそれぞれの通知メッセージを含めさせ得る。ここで、それぞれの通知メッセージは、１つ以上のグラフィカル要素（例えば、アイコン、実行可能な要素）、テキスト（例えば、タイトル、詳細情報）、及び／又はメッセージプレビュー内に表示される他の内容を含み得る。ユーザは、通知メッセージがＧＵＩの通知領域に表示されるときに彼／彼女が通知メッセージと対話し得るのと同様に、メッセージプレビューからの特定の通知メッセージとより迅速に対話し得る。
【０００５】
コンピューティング装置は、ＧＵＩの通知領域において通知メッセージとして通知のグラフィカルなしるしをディスプレイに表示し得る。通知領域は、未だ閲覧、読み取り、聞き取り、又はそうでなければ消去されていない、コンピューティング装置によって受信されたそれぞれの通知に対する通知メッセージを示す通知ペイン、通知ウィンドウ、又は通知シェードであり得る。
【０００６】
コンピューティング装置は、使い勝手を向上させ、ユーザと通知領域との間の対話時間を短縮するため、又はそうでなければ通知とのより効率的なユーザ対話を促進するために、通知をカテゴリ化し、通知の通知メッセージをカテゴリ的重要度のランク付けされた順序で表示し得る。その順序は、通知メッセージがＧＵＩの通知ペイン又は他の通知領域において表示されたときに通知メッセージをディスプレイに表示する方法に結びつけられる。例えば、コンピューティング装置は、通知を次のいずれかであるとしてカテゴリ化し得る：それは、重要かつ継続的なタイプの通知、個人対個人のタイプの通知、通常のタイプの通知、「バイザウェイ（ｂｙ−ｔｈｅ−ｗａｙ）」タイプの通知、又はシステム情報の通知である。その後、コンピューティング装置は、カテゴリ的重要度に従って通知のグラフィカルなしるしを表示し得る。
【０００７】
通知領域は、各セクションが特定のカテゴリに関連付けられている複数のセクションに分割され得る。コンピューティング装置は、通知領域のより目立つように表示されたセクションに（例えば、トップセクション又はフォアグラウンドセクションに）、より高くランク付けされたカテゴリ的重要度を有する通知を表示し、通知領域のより目立たないように表示されたセクションに（例えば、ボトムセクション又はバックグラウンドセクションに）、そしてより低くランク付けされたカテゴリ的重要度を有する通知を表示し得る。例えば、通知領域が、視野に入ったときにＧＵＩの上端（例えばステータスバー）から広がる通知シェードである場合、コンピューティング装置は、通知シェードの最も目立つセクション（例えば、最上部の領域）において重要かつ進行中のタイプの通知を、通知シェードの次に目立つセクション（例：最上部に対して２番目の領域）において個人対個人のタイプの通知を、通知シェードの中間のセクションにおいて通常のタイプの通知を、通知シェードの次に目立たないセクション（例えば、最下部に対して２番目の領域）において「バイザウェイ」タイプの通知を、及び通知シェードの最も目立たないセクション（例えば、最下部の領域）においてシステム情報の通知を表示し得る。通知の適切なカテゴリ化は、コンピューティング装置の基礎となる動作に関する情報をユーザに提供し、例えばその動作に対する１つ以上の通知の重要性を直ちに示し得る。
【０００８】
各通知ソースは様々なタイプの通知を生成してもよく、コンピューティング装置は、通知チャネルを用いて通知を管理し得る。即ち、アプリケーション又はサービスが、それ自体の、その異なるタイプの通知に対する、分類、優先順位付け、及び設定を定義することを可能にするために、コンピューティング装置は、アプリケーション又はサービスが１つ以上の「チャネル」を定義することを可能にし得る。各チャネルは、それぞれの、ラベル、アラート設定（複数可）（例えば、音、バイブレーション、バナーなど）、優先順位付けレベル、チャネルグラフィック、及び他のパラメータを有し得る。通知を生成すると、アプリケーション又はサービスは、その通知を特定のチャネルに割り当て得る。このようにして、コンピューティング装置によって所与の通知が処理されている方法をユーザに表示し得る。これは、通知自体に関するさらなる情報を提供し、それによって提供される知識に照らして効率的な対話を可能にし得る。ＧＵＩの通知設定メニューは、特定のチャネルに対する通知パラメータ（例えば、優先順位付け、アラート設定など）のいくつか又は全てに渡るユーザ制御を可能にし、さらに個人情報が非公開のままであるか若しくは全く記憶されないように、コンピューティング装置が通知に関連付けられ得る個人情報を使用及び／又は記憶する方法に渡るユーザ制御を可能にし得る。
【０００９】
同じラベル、アラート設定、及び優先順位付けレベルを用いて特定のアプリケーション又はサービスからの全ての通知を単に出力し得る他のコンピューティング装置とは異なり、コンピューティング装置は、各通知が属するチャネルの、ラベル、アラート設定、並びに優先順位付けレベルを用いてアプリケーション又はサービスから代わりに通知を出力し得る。このようにして、アプリケーション若しくはサービスが様々な理由で通知を生成するとき、アプリケーション又はサービスは、その異なるタイプの通知がコンピューティング装置のＧＵＩの一部としてどのようにグループ化及び／若しくは出力されるかを、より細かく制御し得る。
【００１０】
使い勝手をさらに向上させるために、及びユーザと通知領域との間の対話時間を短縮するために、コンピューティング装置は、ＧＵＩのステータスバー領域若しくはＧＵＩの他の指定された領域において、進行中の各通知又は進行中の通知の各グループに対して個々の通知のグラフィカル要素（例えば、チャネルグラフィック、通知アイコン、バッジアイコン、又は他のグラフィック若しくは画像）を表示し得る。グラフィカル要素は、通知のカテゴリ、チャネル、及び／又は通知の他の属性に対応し得る。
【００１１】
例えば、通知領域は、視界から隠されたときにはＧＵＩのステータスバー領域の後ろに折り畳まれて表示され、視界に現れたときにはステータスバー領域の後ろから広がるように見える通知シェードであり得る。折り畳まれると、コンピューティング装置は、ステータスバー領域において保留中の通知ごとに個々のグラフィカル要素を表示し得る。通知シェードが広がると、コンピューティング装置は、グラフィカル要素をアニメーション化し、シェードがステータスバーの後ろから見えるようになると、グラフィカル要素を通知シェードの前縁と共に移動させるように見せ得る。通知シェード内の個々の通知メッセージが見えるようになると、コンピューティング装置は、個々の通知メッセージに関連付けられた通知に結び付けられているそれぞれのグラフィカル要素をさらにアニメーション化して、通知シェードの前縁領域から、通知メッセージが表示される通知シェードの領域に移動し得る。このようにして、通知領域が折り畳まれると、コンピューティング装置は、保留中の通知の量及びタイプのしるしとして、ステータスバー領域にグラフィカル要素を提供する。通知領域が広がると、コンピューティング装置は、前縁領域におけるグラフィカル要素の表示を通じて、通知領域において未だ表示されていない通知メッセージに関連付けられている保留中の通知の量及びタイプを表示する。この方法において、通知領域との対話は、この領域を拡大又は縮小するプロセスの間に、全体として保留中の通知のセットの基礎となる状態をユーザに知らせ得るので、より効率的になり得る。例えば、通知領域のさらなる広がりが必要かどうかを示す情報をユーザに提供し得る。いくつかの状況において、適切な意思決定を可能にするために、通知領域において未だ表示されていない通知のタイプのしるしをユーザに提供し得る。さらに、グラフィカル要素と通知領域との間の論理的関係を示すためにアニメーションを使用し得る。システムに関する情報を発見するために必要な対話を減らすことによって、コンピューティング装置にかかる負荷が減り得る。
【００１２】
このようにＧＵＩの一部として通知を管理し、通知のしるしを出力することによって、例示的なコンピューティング装置は、ＧＵＩの使い勝手を改善し、通知と対話するときのユーザとＧＵＩとの間の対話時間を減らし、及び通知とのより効率的なユーザ対話を促進し得る。より良い使い勝手、短縮された対話時間、並びにより効率的なユーザ入力、例示的なコンピューティング装置は、このように通知を管理及び出力しない他のコンピューティング装置よりも、一般的に誤入力または入力を少なくし得る。したがって、例示的なコンピューティング装置は、実行動作をより少なくし、消費電力をより少なくし、及び／又はバッテリ電力節約という結果をもたらし得る。さらに、例示的なコンピューティング装置は、イライラすることがより少ない、より楽しいユーザエクスペリエンスを提供し得る。
【００１３】
一例では、コンピューティング装置が、通知ソースによって生成された通知を受信すること；コンピューティング装置が、通知ソースによって定義されたチャネルのセットを決定し、各チャネルが通知ソースによって定義された１つ以上のパラメータを有すること；及び、コンピューティング装置が、通知に割り当てられたチャネルのセットから特定のチャネルを決定することを含む方法が説明される。その方法は、コンピューティング装置が、特定のチャネルの１つ以上のパラメータを決定すること；及び、コンピューティング装置が、特定のチャネルの１つ以上のパラメータに従って通知のしるしを出力することをさらに含む。
【００１４】
別の例では：通知ソースが生成した通知を受信する；通知ソースが定義した１組のチャネルを決定し、各チャネルが通知ソースによって定義された１つ以上のパラメータを有する；及び、通知に割り当てられたチャネルのセットから特定のチャネルを決定するように構成されている少なくとも１つのプロセッサを含むコンピューティング装置について説明する。その少なくとも１つのプロセッサは、特定のチャネルの１つ以上のパラメータを決定する；及び特定のチャネルの１つ以上のパラメータに従って通知の指示を出力するようにさらに構成されている。
【００１５】
別の例では、実行されたときにコンピューティング装置の少なくとも１つのプロセッサに、通知ソースが生成した通知を受信させる；通知ソースが定義した１組のチャネルを決定させ、各チャネルが通知ソースによって定義された１つ以上のパラメータを有する；通知に割り当てられたチャネルのセットから特定のチャネルを決定させる；及び特定のチャネルの１つ以上のパラメータを決定させる命令を含む、コンピュータプログラム製品並びに／又はコンピュータ読み取り可能な記憶媒体が説明される。その命令は、実行されると、コンピューティング装置１０の少なくとも１つのプロセッサに、特定のチャネルの１つ以上のパラメータに従って通知のしるしをさらに出力させる。
【００１６】
別の例では、通知ソースが生成した通知を受信するための手段；通知ソースによって定義されたチャネルのセットを決定するための手段であって、各チャネルが通知ソースによって定義された１つ以上のパラメータを有する手段；並びに通知に割り当てられたチャネルのセットから特定のチャネルを決定するための手段を含むシステムが説明される。そのシステムはさらに、特定のチャネルの１つ以上のパラメータを決定するための手段；及び特定のチャネルの１つ以上のパラメータに従って通知のしるしを出力するための手段を含む。
【００１７】
１つ以上の例の詳細は、添付の図面及び以下の説明に記載されている。本開示の他の特徴、目的、及び利点は、説明及び図面から、並びに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１８】
【図１】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの一部として通知を処理し、通知のしるしを出力するように構成されている例示的なコンピューティング装置を示す概念図である。
【図２】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの一部として通知を処理し、通知のしるしを出力するように構成されている例示的なコンピューティング装置を示すブロック図である。
【図３Ａ】本開示の１つ以上の態様に従う、通知バッジ及び通知プレビューを表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図３Ｂ】本開示の１つ以上の態様に従う、図３Ａの例示的なグラフィカルユーザインタフェースからの例示的な通知バッジを示す概念図である。
【図４】本開示の１つ以上の態様に従う、通知バッジ及び通知プレビューを表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。
【図５】本開示の１つ以上の態様に従う、カテゴリ的順序によって通知メッセージをカテゴリ化し、表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図６】本開示の１つ以上の態様に従う、カテゴリ的順序によって通知メッセージをカテゴリ化し、表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。
【図７】本開示の１つ以上の態様に従う、通知ソースが１つ以上の通知チャネルを定義できるように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図８】本開示の１つ以上の態様に従う、通知ソースが１つ以上の通知チャネルを定義できるように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。
【図９Ａ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図９Ｂ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図９Ｃ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図９Ｄ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図９Ｅ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図９Ｆ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。
【図１０Ａ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内に通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。
【図１０Ｂ】本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内に通知グラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。
【発明を実施するための形態】
【００１９】
詳細な説明
図１は、本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの一部として通知をグループ化し、通知のしるしを出力するように構成されている例示的なコンピューティング装置を示す概念図である。図１の例において、コンピューティング装置１１０は、個々のモバイル又は非モバイルコンピューティング装置を表す。コンピューティング装置１１０の例には、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、メインフレーム、セットトップボックス、テレビ、ウェアラブル装置（例えば、コンピュータ化された時計、コンピュータ化されたアイウェア、コンピュータ化されたグローブなど）、ホームオートメーション装置若しくはシステム（例えば、インテリジェントサーモスタット若しくはホームアシスタント装置）、パーソナルデジタルアシスタント（ＰＤＡ）、ゲームシステム、メディアプレイヤー、電子書籍リーダー、携帯テレビプラットフォーム、自動車ナビゲーション若しくはインフォテインメントシステム、又は通知データのしるし（例えば、可聴アラート、視覚アラート、触覚的アラート、音声アラート、又は他のタイプのしるし）を受信、及び出力するように構成されている任意の他のタイプのモバイル、非モバイル、ウェアラブル、並びに非ウェアラブルコンピューティング装置を含む。
【００２０】
コンピューティング装置１１０は、ユーザインタフェース構成要素（「ＵＩＣ」）１１２、ユーザインタフェース（「ＵＩ」）モジュール１２０、及び通知モジュール１２２を含む。モジュール１２０並びに１２２は、ソフトウェア、ハードウェア、ファームウェア、若しくはコンピューティング装置１１０内に存在する及び／若しくはコンピューティング装置１１０にて実行しているハードウェア、ソフトウェア、並びにファームウェアを組み合わせたものを用いて、本明細書に記載の動作を実行し得る。コンピューティング装置１１０は、基礎となるハードウェア上で実行される仮想マシンとして、オペレーティングシステム若しくはコンピューティングプラットフォームの１つ以上のサービスとして、及び／又はコンピューティング装置１１０のコンピューティングプラットフォームのアプリケーション層の１つ以上の実行可能プログラムとして、複数のプロセッサ又は複数の装置を用いてモジュール１２０並びに１２２を実行し得る。
【００２１】
コンピューティング装置１１０のＵＩＣ１１２は、コンピューティング装置１１０のための入力装置及び／又は出力装置として機能し得る。ＵＩＣ１１２は様々な技術を用いて実装され得る。例えば、ＵＩＣ１１２は、プレゼンスセンシティブ入力画面、マイクロフォン技術、赤外線センサ技術、又はユーザ入力を受信する際に使用するための他の入力装置の技術を使用する入力装置として機能し得る。ＵＩＣ１１２は、ユーザに情報を出力する際に使用するための任意の１つ以上の、表示装置、スピーカ技術、触覚的フィードバック技術、又は他の出力装置の技術を用いて出力をユーザに提示するように構成されている出力装置として機能し得る。
【００２２】
ＵＩＣ１１２は、コンピューティング装置１１０のユーザからの入力（例えば、タッチ入力及び非タッチ入力）を検出し得る。ＵＩＣ１１２は、ユーザによって実行される１つ以上のジェスチャ（例えば、ユーザが指又はスタイラスペンによりＵＩＣ１１２の１つ以上の場所又はその近くに触れる、指す、及び／又はスワイプすること）を検出することによって入力の命令を検出し得る。ＵＩＣ１１２は、ユーザインタフェース（例えば、ユーザインタフェース１１３）の形でユーザに情報を出力してもよく、そのユーザインタフェースは、コンピューティング装置１１０によって提供される機能に関連付けられ得る。
【００２３】
通知モジュール１２２は、コンピューティング装置１１０にて、若しくはコンピューティング装置１１０と通信して実行されているプラットフォーム、アプリケーション、及びサービスによって生成並びに／又は受信された通知データの少なくとも一部の受信、管理、並びにその他の方法で処理に関連付けられた機能を実行し得る。本開示を通して使用されるように、「通知」及び「通知データ」という用語は、実行環境（例えば、コンピューティング装置１１０にて、若しくはコンピューティング装置１１０と通信して実行されているプラットフォーム、アプリケーション、及びサービスを含む）内でのイベントの発生を示し得る様々な種類の情報を説明するために使用される。例えば、通知は、以下のようなイベントを特定する情報を含み得るが、これらに限定されない；それらは、コンピューティング装置１１０に関連付けられたメッセージングアカウントによる通信メッセージ（例えば、電子メール、インスタントメッセージ、テキストメッセージなど）の受信、コンピューティング装置１１０に関連するソーシャルネットワーキングアカウントによる情報の受信、コンピューティング装置１１０のカレンダーアカウントに関連付けられたカレンダーイベント（会議、予定など）のリマインダ、コンピューティング装置１１０にて、若しくはコンピューティング装置１１０と通信して実行されているサードパーティアプリケーションによって生成及び／若しくは受信される情報、コンピューティング装置１１０にて実行されている、プラットフォーム、アプリケーション、及び／若しくはサービス、若しくはユーザに興味を持たせるその他の任意の情報の２つ以上の構成要素の間の通信の送信並びに／又は受信であり得る。
【００２４】
通知モジュール１２２は、コンピューティング装置１１０が、コンピューティング装置１１０にて実行されている若しくはコンピューティング装置１１０と通信して実行されている任意の装置、サーバ、又はサービスから通知を受信するときに、通知を処理し、コンピューティング装置１１０にて実行されている若しくはコンピューティング装置１１０と通信して実行されている、他のモジュール、アプリケーション、及び／又はサービスへ通知の一部を分散し得る。例えば、通知モジュール１２２は、コンピューティング装置１１０とのネットワーク接続を介してペアになっている、携帯電話又はコンピュータ化された腕時計から通知データを受信し得る。通知データは、携帯電話又はコンピュータ化された腕時計にて実行されているカレンダアプリケーションからのイベントに関する情報（例えば、コンピューティング装置１１０のユーザがチケットを購入したことを示す、映画に関するリマインダ）を含み得る。通知データの受信に応答して、通知モジュール１２２は、ＵＩモジュール１２０がＵＩＣ１１２に通知データを示すグラフィカルなしるし又はアラートをディスプレイに表示させる方法を決定するために使用する他の情報と共に、通知データの少なくとも一部をＵＩモジュール１２０に送信し得る。
【００２５】
いくつかの例では、通知モジュール１２２は、通知を処理するための通知列を実装し得る。通知モジュール１２２は、受信した通知データを特定の順序（例えば、先入れ先出し、後入れ先出しなど）で通知列に配置し得る。通知モジュール１２２は、コンピューティング装置１１０にて実行されている他のアプリケーション、サービス、モジュール、又はプラットフォームに通知列へのアクセスを与え得る。このようにして、通知モジュール１２２は、メモリ内の場所を通知列に提供するだけでよく、コンピューティング装置１１０にて実行されている他のアプリケーション、サービス、プラットフォーム、又はモジュールは、入ってくる通知データに直接アクセスできる。例えば、ＵＩモジュール１２０は、コンピューティング装置１１０のメモリ内の通知列の場所を示すポインタを通知クライアントモジュール１２２から受信し得る。ＵＩモジュール１２０は、ユーザインタフェース１１３の様々な態様を作成するために、通知列内の通知データを取り出して分析し得る。
【００２６】
通知モジュール１２２は、通知をカテゴリ化し、カテゴリ的重要度のランク付けされた順序で通知をランク付けし得る。例えば、通知モジュール１２２は、タイトル、コンテンツ、写真、アバター、通知アイコン、通知ソース（例えば、通知を生成したアプリケーション又はサービス）、送信者、受信時刻、有効期限、優先度レベル、タイプなどのうちの１つ以上を示す通知のメタデータを分析し得る。通知モジュール１２２は、通知を以下のいずれかであるとカテゴリ化するために、通知のメタデータの少なくとも一部をモデル（例えば、ルールベース、機械学習、又は他のタイプのモデル）に入力し得る：それらは、重要かつ進行中タイプの通知（例えば、メディア、対応中の電話又はビデオ通話、ナビゲーションの表示、画面の共有、タイマー、アラーム、会議のリマインダなど）、個人対個人のタイプの通知（テキストメッセージ、電子メールメッセージ、チャットメッセージ、不在の電話若しくはテレビ電話の着信、ボイスメールなど）、「バイザウェイ」タイプの通知（プロモーション、コンテンツ提案など）、システム情報の通知（ネットワーク接続状態、バッテリ状態、周辺機器接続状態、アプリケーションがバックグラウンドで実行されているかどうかの表示、ユーザインタフェース１１３のフォアグラウンドで現在実行されているアプリケーションに関係なく着信メッセージとの対話を表示及び有効にするように構成されている統合メッセージングプラットフォームから受信したメッセージ、若しくは他のシステムアラート）、又は通常のタイプの通知（例えば、前述の他のカテゴリのうちの１つに適合しないその他のタイプの通知）である。
【００２７】
通知モジュール１２２若しくはコンピューティング装置１１０の他の任意の部分が、コンピューティング装置１１０のユーザに関連する個人情報を記憶若しくは使用する場合、通知モジュール１２２又はコンピューティング装置１１０の他の任意の部分は、ユーザからそうしてもよいという明示的な同意を受けた後に（例：メニューの設定、又は他の形式での同意の取得によって）、個人情報を記憶又は使用するだけでよい。コンピューティング装置１１０は、個人情報を記憶若しくは利用する前に、ユーザの実際のアイデンティティを削除するように分析及び／若しくは記憶されている任意の個人情報を、暗号化又は他の方法で処理し得る。例えば、情報は、個人を識別可能な任意の情報が通知ソースから受信されたときに削除されるように通知モジュール１２２によって処理されて、後の処理のために記憶され得る。
【００２８】
いくつかの通知ソースは、様々な理由で通知を生成し得る。通知ソースが、その異なるタイプの通知のそれ自体の分類、優先順位付け、及び設定を定義できるようにするために、通知モジュール１２２は、通知ソースがその通知ソースに関連付けられた１つ以上の「チャネル」を定義できるようにし得る。各チャネルは通知ソースに固有であり、それぞれのラベル、アラート設定（複数可）（例えば、音、バイブレーション、バナーなど）、優先順位付けレベル、チャネルグラフィック、及び他のパラメータを有し得る。通知を生成すると、通知ソースはその通知をそのチャネルの特定の１つに割り当て得る。通知モジュール１２２は、そのチャネルに関連付けられたパラメータに従って通知を処理し得る。
【００２９】
通知モジュール１２２は、通知のソースに従って、通知のためのいくつか又は全ての通知パラメータ（例えば、優先順位付け、アラート設定など）に渡る、ユーザの制御及びカスタマイズを可能にし得る。通知モジュール１２２はさらに、通知のチャネルに従って、通知のためのいくつか又は全ての通知パラメータに渡るユーザの制御及びカスタマイズを可能にし得る。
【００３０】
一般に、ＵＩモジュール１２０は、ＵＩＣ１１２にて提示されているユーザインタフェース（例えば、ユーザインタフェース１１３）との対話を管理し、その表示を制御し得る。例えば、ＵＩモジュール１２０は、ユーザインタフェース１１３及びその要素を生成するために、様々なソース（例えば、コンピューティング装置１１０にて若しくはコンピューティング装置１１０と通信して実行されている、１つ以上のシステムプラットフォーム、オペレーティングシステム、アプリケーション、モジュール、及び／又はサービス）から情報（例えば通知データ）並びに／又は指示を受信し得る。それに応じて、ＵＩモジュール１２０は、ＵＩＣ１１２にユーザインタフェース１１３を表示させるために、指示及び情報をＵＩＣ１１２に出力し得る。さらに、ＵＩモジュール１２０は、ユーザインタフェース１１３の要素が表示されている場所にてＵＩＣ１１２によって検出された入力に応答して、ＵＩＣ１１２から情報を受け取り；入力を解釈するために、並びにコンピューティング装置１１０に１つ以上の機能を実行させるために、様々な宛先（例えば、コンピューティング装置１１０にて若しくはコンピューティング装置１１０と通信して実行されている、１つ以上のシステムプラットフォーム、オペレーティングシステム、アプリケーション、モジュール、及び／又はサービス）への入力に関する情報を広め得る。いくつかの例では、ＵＩモジュール１２０は、ＵＩＣ１１２によって表示されるユーザインタフェースを生成するためにソースから明示的な指示を受信し得る。しかしながら、他の場合では、ＵＩモジュール１２０は他の情報（例えば通知データ）を受信し、他の情報に基づいてＵＩＣ１１２によって表示されるユーザインタフェースを自動的に生成し得る。ＵＩモジュール１２０は、通知モジュール１２２によって取得された通知データから、ユーザインタフェース１１３の要素を自動的に生成し得る。
【００３１】
ユーザインタフェース１１３は、例えば、コンピューティング装置１１０のユーザが、コンピューティング装置１１０にて実行されるアプリケーションを起動するため、若しくはコンピューティング装置１１０がアクセス可能なサービスにアクセスするため、コンピューティング装置１１０に関連する設定を調整するため、又はコンピューティング装置１１０によって生成された通知及び／若しくはコンピューティング装置１１０にて実行されているアプリケーション、若しくはコンピューティング装置１１０がアクセス可能なサービスのグラフィカルな表示を見るために、コンピューティング装置１１０と対話できるグラフィカルユーザインタフェースを表す。ユーザインタフェース１１３は、ステータスバー１１４Ａ、アプリケーション画面１１４Ｂ、お気に入り領域１１４Ｃ、及び通知領域１１５を含む。図１のユーザインタフェース１１３は、グラフィカルユーザインタフェースの一例にすぎず、図１に示された機能よりも追加の機能を含む又は機能がより少ないユーザインタフェース１１３の多くの他の例が存在する。
【００３２】
ステータスバー１１４Ａ（「エネルギーバー」とも呼ばれ得る）は、日時情報、並びにステータスアイコン及びコンピューティング装置１１０の様々なシステムレベルの機能の現在の状態をユーザが気づくことができる他のアイコンを含むユーザインタフェース１１３のグラフィカル要素である。例えば、ステータスバー１１４Ａは、様々なネットワーク接続アイコン、電池残量アイコンなどを含む。
【００３３】
アプリケーション画面１１４Ｂは、ユーザがコンピューティング装置１１０にて実行されているアプリケーション、若しくはコンピューティング装置１１０がアクセス可能なサービスを起動する、若しくはその他の方法でそれらと対話することができるユーザインタフェース１１３のページ又は画面である。アプリケーション画面１１４Ｂは、ウィジェット、起動アイコン、背景画像、又は他の機能を含んだホーム画面となり得る。アプリケーション画面１１４Ｂは、複数のページ又は画面を含み得る。アプリケーション画面１１４Ｂは、コンピューティング装置１１０にて実行されているアプリケーション又はサービスに関連する任意のタイプのユーザインタフェース画面であり得る。図１の例では、アプリケーション画面１１４Ｂは、コンピューティング装置１１０のオペレーティングプラットフォームのホーム画面であり、選択された場合（例えば、特定の起動アイコンが表示されるＵＩＣ１１２の位置にてＵＩＣ１１２によって検出されているユーザ入力に応答して）コンピューティング装置１１０に、その特定の起動アイコンに関連付けられた特定のアプリケーション又はサービスを実行させ得る起動アイコン１１８などの様々な起動アイコンを含む。
【００３４】
お気に入り領域１１４Ｃは、ユーザがコンピューティング装置１１０にて実行しているアプリケーション、又はコンピューティング装置１１０がアクセス可能なサービスを起動できるユーザインタフェース１１３の別の領域である。お気に入り領域１１４Ｃは、図１のアプリケーション画面１１４Ｂからアクセス可能な起動アイコンのサブセットを含み得る。お気に入り領域１１４Ｃは、ユーザによってカスタマイズ可能であり得、最も頻繁にアクセスされる、コンピューティング装置１１０にて実行されているアプリケーション又はコンピューティング装置１１０がアクセス可能なサービスのうち１つ以上の起動アイコンを含み得る。
【００３５】
起動アイコンがアプリケーション画面１１４Ｂに表示されるか、又はお気に入り領域１１４Ｃに表示されるかにかかわらず、起動アイコンは、通知バッジ１１９などの通知バッジを含み得る。バッジアイコン１１９は、アプリケーションアイコン１１８と部分的に重なる異なる位置に示されている一方で、各アプリケーションアイコン１１８に関して全て同じ相対位置に配置され得る。通知モジュール１２２は、コンピューティング装置１１０にて実行されているアプリケーション、又はコンピューティング装置１１０がアクセス可能なサービスによって生成された通知を受信し、通知を処理した後、通知データ及び他の情報をＵＩモジュール１２０に送信し得る。通知データ及び他の情報は、ＵＩモジュール１２０に、通知を生成したアプリケーション若しくはサービスの起動アイコンに隣接して、又はその一部として表示される通知バッジとしての通知のグラフィカルなしるしをＵＩＣ１１２にてディスプレイに表示させる、例えば、通知モジュール１２２は、起動アイコン１１８に関連付けられたアプリケーション若しくはサービスによって生成された通知を受信し、起動アイコン１１８に隣接する通知バッジ１１９を含むようにするために、ＵＩモジュール１１２にＵＩ１１２においてのユーザインタフェース１１３の表示を更新させて、起動アイコン１１８に関連付けられたアプリケーション又はサービスによって生成された通知に対してコンピューティング装置１１０のユーザに注意喚起し得る。
【００３６】
通知領域１１５は、通知メッセージ１１６などの通知メッセージとしての通知のグラフィカルなしるし、及び通知アイコン１１７など、通知のグラフィカル要素（例えば、チャネルグラフィック、通知アイコン、バッジアイコン、又は他のグラフィック若しくは画像）をディスプレイに表示するように構成されているユーザインタフェース１１３の領域である。通知領域１１５は、無地、不透明、若しくは半不透明の、通知ペイン、通知ウィンドウ、又は通知シェードであり得る。通知ペイン、通知ウィンドウ、又は通知シェードは、通知モジュール１２２によって受信され、未だ閲覧、読み取り、聞き取り、若しくはそうでなければ消去されていない各々の通知に対する、通知メッセージ及び／又は通知のグラフィカル要素を示す。例えば、通知モジュール１２２が通知を受信すると、通知モジュール１２２及びＵＩモジュール１２０は、１つ以上のグラフィカル要素（例えば、アイコン、実行可能要素、アバターなど）、テキスト（例えば、通知ソース、タイトル、コンテンツ、若しくは他の情報）、及び／又はメッセージプレビュー内に表示された他のコンテンツを含み得る通知メッセージ１１６を通知領域１１５に含ませ得る。
【００３７】
ユーザは、通知メッセージがＵＩＣ１１２によって表示される場所又はその近くに入力することによって、通知領域１１５からの特定の通知メッセージと対話し得る。例えば、ＵＩモジュール１２０は、通知メッセージ１１６がＵＩＣ１１２によって表示されたときに、通知メッセージ１１６を折り畳んだ状態から広げられた状態へ広げるように見せ、通知メッセージ１１６が表示されるＵＩＣ１１２の位置又はその近くにてジェスチャ入力を検出するＵＩＣ１１２に応答して、より多くの情報を表示し得る。
【００３８】
図１の例では、通知領域１１５は、通知領域１１５が視界から隠されているときにはステータスバー１１４Ａの後ろに折り畳まれて見え、視界に現れ、広がるときはアプリケーション画面１１４Ｂの前面に広がるように見える通知シェードである。例えば、（ユーザインタフェース１１３が表示されているＵＩＣ１１２の場所又はその近くでスタイラス又は指によって実行されているドラッグダウンジェスチャとして図１に示される）ユーザ入力１０６の検出に応答して、ＵＩモジュール１２０は、ＵＩＣ１１２における通知領域１１５の表示を、ステータスバー１１４Ａの後ろから広がり、ユーザ入力１０６の長さに比例したサイズが大きくなるように見せる。ＵＩモジュール１２０が、ＵＩＣ１１２によって表示されている間に通知領域１１５を広げて見えるようにし得るので、通知領域１１５内に含まれる通知メッセージは、ステータスバー１１４Ａの後ろから見えるようになり得る。
【００３９】
いくつかの例では、ＵＩモジュール１２０が通知領域１１５をステータスバー１１４Ａの後ろに隠れている、又は折り畳まれているように見せる場合、ＵＩモジュール１２０は、通知モジュール１２２によって受信された保留中の各通知に対して、ステータスバー１１４Ａ内に通知のグラフィカル要素１１７などの通知のグラフィカル要素をＵＩＣ１１２に含めさせ得る。ＵＩモジュール１２０が通知領域１１５Ａをステータスバー１１４Ａの下から広がるように見せるとき、ＵＩモジュール１２０は、通知領域１１５がステータスバー１１４Ａの後ろから見えるようになるにつれて、通知のグラフィカル要素を通知領域１１５の前縁とともに移動させることによって、ステータスバー１１４Ａ内に以前に表示されていた通知のグラフィカル要素をＵＩＣ１１２にアニメーション化させ得る。通知領域１１５内の各通知メッセージがＵＩＣ１１２にて見えるようになると、ＵＩモジュール１２０は、ＵＩＣ１１２にグラフィカル要素１１７などの通知のグラフィカル要素を表示させ得る。通知のグラフィカル要素は、通知領域１１５の前縁区域内に表示され、通知領域１１５の前縁区域内から通知メッセージ内にアニメーション化されるように表示され、その通知メッセージに対応する。このようにして、通知領域１１５が折り畳まれると、ＵＩモジュール１２０は、ＵＩＣ１１２に、ステータスバー区域１１４Ａに通知のグラフィカル要素を、保留中の通知の量及びタイプのしるしとしてディスプレイに表示させる。通知領域１１５が広げられると、ＵＩモジュール１２０は、通知領域１１５の前縁区域内の要素１１７などの通知のグラフィカル要素のディスプレイへの表示を通じて、通知領域１１５内に未だ表示されていない（又はステータスバー１１４Ａの後ろで未だ折り畳まれている）通知メッセージに関連付けられた保留中の通知の量及びタイプのしるしを提供する。
【００４０】
図２は、本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの一部として、通知を処理し、通知のしるしを出力するように構成されている例示的なコンピューティング装置を示すブロック図である。図２のコンピュータ装置２１０は、図１のコンピュータ装置１１０の一例として以下に説明される。図２は、コンピューティング装置２１０の１つの特定の例だけを示しており、コンピューティング装置２１０の多くの他の例は、別の例において使用され、例示的なコンピューティング装置２１０において含まれる構成要素のサブセットを含み、又は図２に示されていない追加の構成要素を含み得る。
【００４１】
図２の例に示すように、コンピューティング装置２１０は、ユーザインタフェース構成要素（ＵＩＣ）２１２、１つ以上のプロセッサ２４０、１つ以上の通信ユニット２４２、１つ以上の入力構成要素２４４、１つ以上の出力構成要素２４６、及び１つ以上の記憶構成要素２４８を含む。ＵＩＣ２１２は、出力構成要素２０２及び入力構成要素２０４を含む。コンピューティング装置２１０の記憶構成要素２４８は、通知列２３２、アプリケーションモジュール２３０Ａ〜２３０Ｎ（総称して「アプリケーションモジュール２３０」）、並びに通知モジュール２２２及びＵＩモジュール１２０を含むオペレーティングプラットフォーム２２８を含む。通知モジュール２２２は、カテゴリ化モジュール２２４及びチャネルモジュール２２６を含む。
【００４２】
通信チャネル２５０は、構成要素間の通信（物理的、通信的、及び／又は動作的）のために、構成要素２１２、２４０、２４２、２４４、２４６、並びに２４８の各々を相互接続し得る。いくつかの例では、通信チャネル２５０は、システムバス、ネットワーク接続、プロセス間の通信データ構造、又はデータを通信するための任意の他の方法を含み得る。
【００４３】
コンピューティング装置２１０の１つ以上の通信ユニット２４２は、１つ以上のネットワーク上でネットワーク信号を送信及び／又は受信することによって、１つ以上の有線及び／又は無線ネットワークを介して外部の装置と通信し得る。通信ユニット２４２の例は、ネットワークインターフェースカード（例えば、イーサネット（登録商標）カード）、光トランシーバ、無線周波数トランシーバ、ＧＰＳ受信機、又は情報を送信及び／若しくは受信し得る任意の他のタイプの装置を含む。通信ユニット２４２の他の例は、短波無線機、セルラーデータ無線機、無線ネットワーク無線機、並びにユニバーサルシリアルバス（ＵＳＢ）コントローラを含み得る。
【００４４】
コンピューティング装置２１０の１つ以上の入力構成要素２４４は、入力を受信し得る。入力の例は、触覚、音声、及びビデオの入力である。コンピューティング装置２１０の入力構成要素２４２は、一例では、人間若しくは機械から入力を検出するための、プレゼンスセンシティブ入力装置（例えば、タッチセンシティブ画面、ＰＳＤ）、マウス、キーボード、音声応答システム、ビデオカメラ、マイクロフォン、又は任意の他のタイプの装置を含む。いくつかの例では、入力構成要素２４２は、１つ以上のセンサ構成要素、１つ以上の位置センサ（ＧＰＳ構成要素、Ｗｉ−Ｆｉ構成要素、セルラー構成要素）、１つ以上の温度センサ、１つ以上の移動センサ（例えば加速度計、ジャイロ）、１つ以上の圧力センサ（例えば気圧計）、１つ以上の環境光センサ、及び１つ以上の他のセンサ（例えばマイクロフォン、カメラ、赤外線近接センサ、湿度計など）を含み得る。他のセンサは、心拍センサ、磁力計、グルコースセンサー、湿度計センサ、嗅覚センサ、コンパスセンサー、ステップカウンターセンサーなどを含んでもよく、これらに限定されないいくつかの他の例を挙げることができる。
【００４５】
コンピューティング装置１１０の１つ以上の出力構成要素２４６は出力を生成し得る。出力の例は、触覚、音声、及びビデオの出力である。コンピューティング装置２１０の出力構成要素２４６は、一例では、ＰＳＤ、サウンドカード、ビデオグラフィックアダプタカード、スピーカ、陰極線管（ＣＲＴ）モニタ、液晶ディスプレイ（ＬＣＤ）、又は人間若しくは機械に出力を生成するための任意の他のタイプの装置を含む。
【００４６】
コンピューティング装置２１０のＵＩＣ２１２は、コンピューティング装置１１０のＵＩＣ１１２と同様であり得、出力構成要素２０２及び入力構成要素２０４を含む。出力構成要素２０２は、ＵＩＣ２１２によって情報が表示される画面などのディスプレイ構成要素であり得、入力構成要素２０４は、静電容量センサのタッチなどの、出力構成要素２０２及び／又はその近くにて物体を検出するプレゼンスセンシティブ入力構成要素であり得る。出力構成要素２０２及び入力構成要素２０４は、スピーカ及びマイクロフォンのペア、又は入力構成要素２４４及び出力構成要素２４４などの１つ以上の入力、並びに出力構成要素の任意の他の組合せであり得る。図２の例において、ＵＩＣ２１２は、（図１のユーザインタフェース１１３のような）ユーザインタフェースを提示し得る。
【００４７】
一つの例示的な範囲として、プレゼンスセンシティブ入力構成要素２０４は、出力構成要素２０２から２インチ以下の範囲内にある１つ以上の指、スタイラス、又は１つ以上の他の入力ユニットなどの物体を検出し得る。入力構成要素２０４は、物体が検出された、出力構成要素２０２の位置（例えば、［ｘ、ｙ］座標）を決定し得る。別の例示的な範囲では、入力構成要素２０４は、出力構成要素２０２から６インチ以下の物体を検出し得、他の範囲も可能である。入力構成要素２０４は、容量性、誘導性、及び／又は光学的認識技術を用いて、ユーザの指によって選択された出力構成要素２０２の位置を決定し得る。いくつかの例では、入力構成要素２０４はまた、出力構成要素２０２に関して説明したように、触覚的、聴覚的、又は視覚的刺激を用いてユーザに出力する。
【００４８】
コンピューティング装置２１０のＵＩＣ２１２は、コンピューティング装置２１０のユーザからの入力として、二次元ジェスチャ及び／又は三次元ジェスチャを検出し得る。例えば、ＵＩＣ２１２のセンサは、ＵＩＣ２１２のセンサの閾値距離内でのユーザの動き（例えば、１つ以上の手、腕、指、他の身体部分、ペン、スタイラスなどを動かすこと）を検出し得る。ＵＩＣ２１２は、動きの二次元又は三次元ベクトル表現を決定し、そのベクトル表現を、多次元を有するジェスチャ入力（例えば、ハンドウェーブ、ピンチ、拍手、ペンストロークなど）に相関させ得る。言い換えれば、ＵＩＣ２１２は、ＵＩＣ２１２が表示のために情報を出力する画面若しくは表面又はその近くにてジェスチャすることをユーザに要求することなく、多次元ジェスチャを検出し得る。その代わりに、ＵＩＣ２１２は、ＵＩＣ２１２が表示のために情報を出力する画面若しくは表面の近くにあり得る若しくはあり得ないセンサ又はその近くにて行われた多次元ジェスチャを検出できる。
【００４９】
コンピューティング装置２１０の内部構成要素として示されているが、ＵＩＣ２１２はまた、入力及び出力を送信並びに／又は受信するために、コンピューティング装置２１０とデータパスを共有する外部の構成要素を表し得る。例えば、一例では、ＵＩＣ２１２は、コンピューティング装置２１０の外部のパッケージ内に配置され、コンピューティング装置２１０の外部のパッケージに物理的に接続されたコンピューティング装置２１０の内蔵の構成要素（例えば、携帯電話の画面）を表す。別の例では、ＵＩＣ２１２は、コンピューティング装置２１０の外側に配置され、コンピューティング装置２１０のパッケージング又はハウジングから物理的に分離されたコンピューティング装置２１０の外部の構成要素（例えば、コンピューティング装置２１０と有線及び／又は無線データパスを共有するモニタ、プロジェクタなど）を表す。
【００５０】
コンピューティング装置２１０内の１つ以上の記憶構成要素２４８は、コンピューティング装置２１０の動作中に処理するための情報を記憶し得る（例えば、コンピューティング装置２１０は、モジュール２２０、２２２、２２４、２２６、及び２３０によってアクセスされるデータ、並びにコンピューティング装置２１０にて実行中のオペレーティングプラットフォーム２２８並びに、通知列２３２を記憶し得る）。いくつかの例では、記憶構成要素２４８は一時的なメモリであり、これは記憶構成要素２４８の主な目的が長期の記憶ではないことを意味する。コンピューティング装置２１０上の記憶構成要素２４８は、揮発性メモリとして情報の短期の記憶のために構成されてもよく、したがって、電源が切られると記憶された内容を保持しない。揮発性メモリの例は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、及び当技術分野で知られている他の形態の揮発性メモリを含む。
【００５１】
記憶構成要素２４８は、いくつかの例では、１つ以上のコンピュータ読み取り可能な記憶媒体も含む。いくつかの例における記憶構成要素２４８は、１つ以上の非一時的コンピュータ読み取り可能な記憶媒体を含む。記憶構成要素２４８は、揮発性メモリによって通常記憶されるよりも大量の情報を記憶するように構成され得る。記憶構成要素２４８はさらに、不揮発性メモリ空間として情報の長期の記憶のために構成されてもよく、電源オン／オフサイクル後に情報を保持し得る。不揮発性メモリの例は、磁気ハードディスク、光ディスク、フロッピー（登録商標）ディスク、フラッシュメモリ、又は電気的にプログラム可能なメモリ（ＥＰＲＯＭ）若しくは電気的消去及びプログラム可能（ＥＥＰＲＯＭ）メモリの形態を含む。記憶構成要素２４８は、通知列２３２、モジュール２２０、２２２、２２４、２２６、及び２３０、並びにオペレーティングプラットフォーム２２８に関連する、プログラム命令並びに／又は情報（例えばデータ）を記憶し得る。記憶構成要素２４８は、通知列２３２、モジュール２２０、２２２、２２４、２２６、及び２３０、並びにオペレーティングプラットフォーム２２８に関連付けられたデータ又は他の情報を記憶するように構成されているメモリを含み得る。
【００５２】
１つ以上のプロセッサ２４０は、機能を実装し、かつ／又はコンピューティング装置２１０に関連する指示を実行し得る。プロセッサ２４０の例は、アプリケーションプロセッサ、ディスプレイコントローラ、補助プロセッサ、１つ以上のセンサハブ、及びプロセッサ、処理ユニット、又は処理装置として機能するように構成されている任意の他のハードウェアを含む。モジュール２２０、２２２、２２４、２２６、及び２３０、並びにオペレーティングプラットフォーム２２８は、コンピューティング装置２１０の様々な作用、動作、又は機能を実行するためにプロセッサ２４０によって動作可能であり得る。例えば、コンピューティング装置２１０のプロセッサ２４０は、モジュール２２０、２２２、２２４、２２６、及び２３０、並びにオペレーティングプラットフォーム２２８に起因する本明細書に記載の動作を、プロセッサ２４０に実行させる記憶構成要素２４８によって記憶された命令を取り出して実行し得る。命令は、プロセッサ２４０によって実行されるとき、コンピューティング装置２１０に、記憶構成要素２４８内に、例えば通知列２３２にて、情報を記憶させ得る。
【００５３】
アプリケーションモジュール２３０は、コンピューティング装置２１０にて実行されている、又はコンピューティング装置２１０からアクセス可能な任意の通知のソースを表す。例えば、アプリケーションモジュール２３０は、メッセージングアプリケーション、ソーシャルメディアアプリケーション、カレンダアプリケーション、ゲームアプリケーション、デジタルアシスタントアプリケーション、キーボードアプリケーション、アプリケーション拡張、又はコンピューティング装置２１０にて実行されるように構成されている任意の他のタイプのアプリケーションを含み得る。アプリケーションモジュール２３０は、コンピューティング装置２１０からアクセス可能であるがクラウドネットワーク環境においてリモートサーバにて実行されるクラウドベースのアプリケーションであり得る。アプリケーションモジュール２３０は、通知モジュール２２２によって受信され、かつ通知として通知列２３３にて記憶された通知データを生成し得る。
【００５４】
通知列２３２は、通知データを記憶及びバッファリングするための任意の適切な記憶媒体を表す。例えば、通知列２３２は、通知モジュール２２２が通知データを経時的に受信するにつれて通知データを整理するためのバッファリングのための列、スタック、又はタイプのデータ構造であり得る。ＵＩモジュール２２０は、通知列２３２に記憶されている通知データに基づいて、通知列２３２にアクセスし、ユーザインタフェース１１３などの、ユーザインタフェースの要素を生成し得る。通知モジュール２２２は、通知列２３２に情報を追加する（例えば、通知データが受信されたとき）、又は通知列２３２から情報を削除する（例えば、ユーザが通知アラートを消すために入力したときなど）ための読み／書き動作を実行し得る。
【００５５】
オペレーティングプラットフォーム２２８は、コンピューティング装置２１２のコンピューティングリソースを管理する。オペレーティングプラットフォーム２２８は、オペレーティングシステムとも呼ばれ、モジュール２２０、２２２、２２４、２２６、及び２３０、通知列２３２、並びに構成要素２０２、２０４、２１２、２４０、２４２、２４４、２４６、及び２４８の間の対話を管理する。例えば、オペレーティングプラットフォーム２２８は、モジュール２２０、２２２、２２４、２２６、及び２３０の各々にプロセッサ２４０のプロセッサ時間の割合が割り当てられることを確実にするためにタスクの時分割若しくはスケジューリングを実行し得る、又はストレージ構成要素２４８、若しくは構成要素２０２、２０４、２１２、２４２、２４４、及び２４６のうちの任意の他のものにて記憶された情報へ効率的にアクセスし得る。言い換えれば、オペレーティングプラットフォーム２２８は、コンピューティング装置２１０で実行されている、又はコンピューティング装置２１０がアクセス可能であるソフトウェア、ハードウェア、及びファームウェアの間の仲介物として動作し得る。いくつかの例では、オペレーティングプラットフォーム２２８は、通知データ及びその提示を生成、受信、管理、又は他の方法で処理するコンピューティング装置２１０の唯一の実行可能アプリケーションである。例えば、複数の特定用途向けプログラム又はアプリケーションに頼るのではなく、コンピューティング装置２１０のオペレーティングプラットフォーム２２８は、ＵＩモジュール２２０及び通知モジュール２２２を用いて、通知に関係する全ての動作及び機能、並びにＵＩＣ２１２における通知データに関連付けられた情報の提示を制御し得る。
【００５６】
通知モジュール２２２は、図１のコンピューティング装置１１０の通知モジュール１２２の全ての機能を含み、コンピューティング装置２１０にて、若しくはコンピューティング装置２１０と通信して実行されるプラットフォーム、アプリケーション、及びサービスによって生成並びに／又は受信された通知データの少なくとも一部を受信、管理、並びにその他の方法で処理するための通知モジュール２２２と同様の動作を実行し得る。図２に示すように、通知モジュール２２２は、オペレーティングプラットフォーム２２８の一部であり得るか又はそれに関連付けられ得る。例えば、通知モジュール２２２は、コンピューティング装置２１０の別個のモジュール若しくはアプリケーションとは対照的に、サブモジュール、サービス、又はオペレーティングプラットフォーム２２８のアクティビティであり得る。
【００５７】
通知モジュール２２２は、（例えば、異なるコンピューティング装置から通信ユニット２４２によって取得された情報として、アプリケーションモジュール２３０のうちの１つから取得された情報としてなど）通知データを受信し、通知データを通知列２３２にて記憶し得る。通知モジュール２２２は、それが受信した通知データの一部をＵＩモジュール２２０に出力し、及び／又はＵＩモジュール２２０へのアクセスを通知列２３２に提供し得る。例えば、通知モジュール２２２は、記憶構成要素２４８内の通知列２３２の位置へのメモリポインタをＵＩモジュール２２０と共有し、ＵＩモジュール２２０がその位置にて記憶されているデータにアクセスできるようにし得る（例えば、ＵＩモジュール２２０がＵＩＣ２１２にユーザインタフェース１１３として表示させるグラフィカル要素を自動的に生成するために）。
【００５８】
通知モジュール２２２のカテゴリ化モジュール２２４は、通知をカテゴリ化し、カテゴリ的重要度のランク付けされた順序で通知をランク付けし得る。例えば、通知モジュール２２２は、通知データを分析して、タイトル、コンテンツ、アバター、通知アイコン、通知ソース（例えば、通知を生成したアプリケーション又はサービス）、送信者、受信時刻、有効期限、優先度レベル、タイプ、及び通知に関するその他の情報を決定し得る。
【００５９】
カテゴリ化モジュール２２４は、重要度のいくつかの異なるカテゴリのうちの１つに通知データをカテゴリ化するために、ルールベース、機械学習、又は他のタイプのモデルを実行し得る。モデルは、通知をカテゴリ化するために（例えば、ヒューリスティック並びに／若しくはコンピューティング装置２１０及び他のコンピューティング装置に関連する過去のユーザインタラクションデータに基づいて）訓練される、任意のタイプの機械学習又は人工知能ベースのモデルであり得る。モデルは、通知の重要性とカテゴリを判断するために、ヒューリスティックを用い得る。例えば、通知ソースは、カテゴリ化モジュール２２４が通知のカテゴリの重要性を評価するために使用する要因であり得る（例えば、ナビゲーションアプリケーション通知は、アプリケーションアップデート又は新機能の通知よりも重要であるとして扱われ得る）。アプリケーションソースがフォアグラウンドプロセスとして実行されているかどうかは、通知の重要性を決定するための要因となり得る。即ち、フォアグラウンドで実行中のアプリケーションモジュール２３０は、バックグラウンドプロセスとして実行されているアプリケーションモジュール２３０よりも高く、又はより重要であると評価され得る。
【００６０】
カテゴリ化モジュール２２４は、通知に対する最も重要な、即ち最も重要度の高いランクのカテゴリが、典型的には時間に敏感な、又はユーザの現在の状況（例えば、場所、時刻、ユーザの現在のタスクなど）に対して適用可能である「重要かつ進行中の」タイプの通知であることを決定し得る。「重要かつ進行中の」タイプの通知の例は、コンピューティング装置２１０によって現在出力されているメディア（例えば、ゲーム、ビデオ、音楽など）に関する通知、コンピューティング装置２１０を介して現在対応中の電話若しくはビデオ通話、コンピューティング装置２１０によって現在出力されているナビゲーション命令、コンピューティング装置２１０の画面共有機能、コンピューティング装置２１０を通して設定されるタイマー若しくはアラーム、カレンダ、又はコンピューティング装置２１０によって出力される会議のリマインダなどを含む。
【００６１】
カテゴリ化モジュール２２４は、２番目に重要な、即ち通知に対して次に重要度の高いランクのカテゴリが、電話若しくはビデオ通話以外の、２人の又は人々のグループの間の何らかの形の往復メッセージ通信を含む「個人対個人」のタイプの通知であると決定し得る。例えば、カテゴリ化モジュール２２４は、テキストメッセージ、電子メールメッセージ、チャットメッセージ、不在の電話又はビデオ通話の着信、ボイスメールなどに関係する通知が全てのタイプの個人対個人のタイプの通知であると決定し得る。
【００６２】
カテゴリ化モジュール２２４は、２番目に重要度の低い、即ち通知に対して次に重要度の低いランクのカテゴリが、情報に関するがいずれの進行中の通信又は現在のタスクに必ずしも関連しない「バイザウェイ」タイプの通知であると決定し得る。例えば、カテゴリ化モジュール２２４は、宣伝、広告、及びコンテンツ提案に関係する通知が全てのタイプのバイザウェイタイプの通知であると決定し得る。
【００６３】
カテゴリ化モジュール２２４は、２番目に重要度の低い、即ち通知に対して次に重要度の低いランクのカテゴリがシステム情報の通知であると決定し得る。システム情報の通知の例は、ソフトウェアアップデート（例えば、オペレーティングシステムアップデート、アプリケーションアップデートなど）、ネットワーク接続状態、バッテリ状態、周辺機器接続状態、現在実行中のアプリケーションの状態、ユーザインタフェース１１３のフォアグラウンドで現在実行されているアプリケーションであるかに関係なく、着信メッセージとの対話を表示及び可能にするように構成されている統合メッセージングプラットフォームから受信したメッセージ、並びに他のシステムアラートに関する情報を含む。
【００６４】
カテゴリ化モジュール２２４は、通知に対する重要度の中ランクのカテゴリが「通常の」タイプの通知であると判断し得る。カテゴリ化モジュール２２４は、重要かつ進行中タイプの通知、個人対個人のタイプの通知、バイザウェイタイプの通知、又はシステム情報の通知のいずれでもない任意の通知は、他のタイプの通知と比較して、上位にも下位にもランク付けするべきではない通常のタイプ通知であると決定し得る。
【００６５】
いくつかの通知ソースは、様々な理由で通知を生成し得る。通知ソースが、その異なるタイプの通知に対するそれ自体の分類、優先順位付け、及び設定を定義できるようにするために、通知モジュール２２２のチャネルモジュール２２６は、アプリケーションモジュール２３０のいずれかがそのアプリケーションモジュール２３０に関連する１つ以上の「チャネル」を定義できるようにし得る。各チャネルは、特定のアプリケーションモジュール２３０に対して固有であり得、それぞれのラベル、アラート設定（複数可）（例えば、音、バイブレーション、バナーなど）、優先順位付けレベル、チャネルグラフィック、及び／又は他のパラメータを有し得る。通知を生成すると、その通知を生成したアプリケーションモジュール２３０のうちの１つ（例えばアプリケーションモジュール２３０Ａ）は、その通知をアプリケーションモジュール２３０Ａに関連付けられたチャネルのうちの特定の１つに割り当て得る。チャネルモジュール２２６は、チャネルパラメータを解釈し、通知モジュール２２２に、アプリケーションモジュール２３０Ａに対するチャネルに関連付けられたパラメータに従って通知を処理させ得る。
【００６６】
通知モジュール２２２は、通知ソースに従って通知のためのいくつか又は全ての通知パラメータ（例えば、優先順位付け、アラート設定など）に渡るユーザ制御及びカスタマイズを可能にし得るが、チャネルモジュール２２６はさらに通知ソースに従って通知のためのいくつか又は全ての通知パラメータに渡るユーザ制御及びカスタマイズを可能にし得る。例えば、チャネルモジュール２２６は、チャネルのパラメータに関連する値を決定するために、ユーザインタフェース１１３などのユーザインタフェースの設定ページで検出されたユーザ入力を管理し得る。
【００６７】
通知モジュール２２２若しくはコンピューティング装置２１０の任意の他の部分が、コンピューティング装置２１０のユーザに関連する個人情報（例えば、通知情報、通信、連絡先、コンテキスト情報など）を記憶若しくは使用する場合、通知モジュール２２２又はコンピューティング装置２１０の任意の他の部分は、そうしてもよいとユーザから明示的な同意を受けた後に（例えば、メニュー設定によって、若しくは他の形態で同意を得ることによって）個人情報を記憶又は使用するだけであり得る。コンピューティング装置２１０は、個人情報を記憶若しくは使用する前に、分析及び／若しくは格納されている任意の個人情報を暗号化又は他の方法で処理して、ユーザの実際のアイデンティティを削除し得る。例えば、個人を識別可能な任意の情報が、通知ソースから受信され、後の処理のために記憶されたときに削除されるようにするために、情報は通知モジュール２２２によって処理され得る。
【００６８】
通知モジュール２２２のチャネルモジュール２２６は、アプリケーションプログラミングインターフェース（ＡＰＩ）を提供し得る。そのアプリケーションプログラミングインターフェースから、任意のアプリケーションモジュール２３０は、そのアプリケーション又は通知ソースに特有の１つ以上のそれぞれの通知チャネルを定義し得る。つまり、チャネルモジュール２２６は、メカニズム（例えば、ＡＰＩ）を提供し得る。そのメカニズムにより、アプリケーションモジュール２３０のうちの１つの開発者がそのアプリケーションモジュール２３０によって生成され得る様々なタイプの通知をしるしを提供し得る。チャネルモジュール２２６は、アプリケーションモジュール２３０がコンパイル中に又は動的に（例えば、実行時に）チャネルを定義することを可能にし得る。
【００６９】
例えば、ソーシャルメディアアプリケーションは、（例えば、ソーシャルメディアサービスの新機能に対してユーザに注意喚起するための）宣伝の通知、プロフィール更新通知、着信メッセージ通知、関係要求の通知、又はソーシャルメディアサービスに関連した様々な他のタイプの通知を生成し得る。ソーシャルメディアアプリケーションは、それが生成する各タイプの通知に対してチャネルモジュール２２６によって提供されるＡＰＩを介してチャネルを定義し、それによって、異なるタイプのソーシャルメディア通知の各々に対しての分類、カテゴリ化、優先順位付け、及び設定に渡るユーザ制御を可能にし得る。
【００７０】
ＵＩモジュール２２０は、図１のコンピューティング装置１１０のＵＩモジュール１２０の全ての機能を含み、コンピューティング装置２１０がユーザからの入力及びユーザへの出力を処理するためにＵＩＣ２１２にて提供するユーザインタフェース（例えば、ユーザインタフェース１１３）を管理するためのＵＩモジュール１２０と同様の動作を実行し得る。例えば、ＵＩモジュール２２０は、通知データ及び通知モジュール２２２によって取得された他の情報に基づいて指示又は命令を生成して、ＵＩＣ２１２にユーザインタフェース１１３及びその要素を表示させ得る。通知モジュール２２２の場合と同様に、ＵＩモジュール２２０はオペレーティングプラットフォーム２２８の一部であっても、又はそれに関連付けられ得る。例えば、ＵＩモジュール２２０は、コンピューティング装置２１０の別個のモジュール又はアプリケーションとは対照的に、サブモジュール、サービス、又はオペレーティングプラットフォーム２２８のアクティビティであり得る。
【００７１】
ＵＩモジュール２２０は、通知列２３２にて受信及び記憶時に通知データを分析し、通知が生成及び／又は受信された直後にＵＩＣ２１２が通知のグラフィカルなしるしを（例えば、通知バッジ、通知メッセージ、又は他のタイプのグラフィカルなしるしとして）ディスプレイに表示するように、（通知モジュール２２２からの命令の受信に応答して）ユーザインタフェース１１３の要素を更新し得る。
【００７２】
図３Ａは、本開示の１つ以上の態様に従う、通知バッジ及び通知プレビューを表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。図３Ａは、図２のコンピューティング装置２１０のコンテキストにおいて以下に説明される。
【００７３】
図３Ａは、コンピューティング装置２１０によって表示され得る例示的なユーザインタフェースとしてのユーザインタフェース３１３を示す。コンピューティング装置２１０のＵＩモジュール２２０及び通知モジュール２２２は、表示のためにＵＩＣ２１２にユーザインタフェース３１３を出力させ得る。ユーザインタフェース３１３は、ステータスバー３１４Ａ、アプリケーション画面３１４Ｂ、及びお気に入り区域３１４Ｃを含む。アプリケーション画面３１４Ｂ内に表示されているように、ユーザインタフェース３１３は、通知ソースに関連するグラフィカル要素を表す起動アイコン３１８を含む。起動アイコン３１８又はその近くに表示されているのは、通知バッジ３１９である。図３Ａの例には示されているが、アプリケーション画面３１４Ｂ内に表示されているように、起動アイコン３１８及び通知バッジ３１９は、お気に入り区域３１４Ｃ又はユーザインタフェース３１３のいくつかの他の部分に表示され得る。
【００７４】
ユーザは、起動アイコン３１８が表示されるＵＩＣ２１２の位置又はその近くにて第１のタイプのユーザ入力（例えばタップジェスチャ）をし得る。ＵＩモジュール２２０は、第１のタイプのユーザ入力が起動アイコン３１８を選択する入力であると解釈して、コンピューティング装置２１０に起動アイコン３１８に関連付けられたアプリケーション又はサービスを実行させ得る。ユーザは、起動アイコン３１８が表示されるＵＩＣ２１２の位置又はその近くにて、第２のタイプのユーザ入力３０６（例えば、長押しジェスチャ）をし得る。ＵＩモジュール２２０は、第２のタイプのユーザ入力３０６が起動アイコン３１８を選択する入力であると解釈し、コンピューティング装置２１０に通知領域３１５を表示させ得る。通知領域３１５は、図３Ａの例においては、通知メッセージ３１６Ａ−３１６Ｄ（総称して「通知メッセージ３１６」）を含む通知プレビューウィンドウである。通知メッセージ３１６の各々は、通知モジュール２２２が起動アイコン３１８に関連付けられた通知ソースから受信した異なる保留中の通知に対応する。
【００７５】
通知領域３１５から、コンピューティング装置２２０のユーザは、通知メッセージ３１６が図１の通知領域１１５などの通知シェードで表示されている場合に彼又は彼女が通知メッセージ３１６と対話するであろうと同じ方法で、通知メッセージ３１６と対話し得る。例えば、ユーザは、通知メッセージ３１６Ｄが表示されているＵＩＣ２１２の位置又はその近くにてジェスチャ入力を提供して、折り畳まれて示される通知メッセージ３１６Ａ−３１６Ｃよりも多くのコンテンツを通知メッセージ３１６Ｄに広げて表示させ得る。コンピューティング装置２１０は、通知領域３１５からのインライン動作を可能にし得る。コンピューティング装置２１０は、通知領域３１５にて検出された入力をユーザコマンドに対応するものとして解釈して、通知メッセージ３１６のいずれかに対応する通知に関する動作をコンピューティング装置２１０に実行させ得る。いくつかの例では、コンピューティング装置２１０は、１つ以上の入力を検出することに応答して、対応する通知を消去し、対応する通知に返信し（例えば、通知がメッセージ通知である場合）、通知が保留中のままになるように対応する通知をマーク又は保存し、通知を転送し、通知をブロックし、通知の設定を調整し、又は通知領域若しくは通知シェードからの通知に関して実行され得る任意のその他の動作をし得る。
【００７６】
いくつかの例では、通知バッジ３１９は、通知領域３１５内にアニメーション化し得る。つまり、ＵＩモジュール２２０は、起動アイコン３１８が表示されている場所若しくはその近くにて長押しジェスチャを検出することに応答して、通知バッジ３１９から通知領域３１５を大きく又は広げるように見せ得る。例えば、通知領域３１５は、長押しに応答して通知メッセージ３１６を表示するために起動アイコン３１８から大きくなるように見え得る。
【００７７】
図３Ｂは、本開示の１つ以上の態様に従う、図３Ａの例示的なグラフィカルユーザインタフェースからの例示的な通知バッジを示す概念図である。図３Ａは、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【００７８】
図３Ｂは、起動アイコン３１８に隣接して又はその一部として表示される例示的な通知バッジとしての通知バッジ３１９Ａ−３１９Ｆを含む。しかしながら、他のコンピューティング装置によって表示され得る、起動アイコンに関連付けられたアプリケーション又はサービスについて現在保留中の通知の総数を単に示す典型的な通知バッジとは異なり、通知バッジ３１９−３１９Ｆは、通知バッジが表す保留中の通知の内容、通知が割り当てられているカテゴリ、及び／又は通知が関連付けられたチャネルを反映する情報（例えばグラフィカルな情報、テキスト、画像、グラフィック、アイコン、アバターなど）を含む。
【００７９】
例えば、通知バッジ３１９Ａは、起動アイコン３１８に関連付けられた保留中の通知（複数可）が、保留中の通知（複数可）を生成したアプリケーション又はサービスの新しいメッセージチャネルに関連付けられていることを示すためのメッセージングアイコンを含む。通知バッジ３１９Ｂは、起動アイコン３１８に関連付けられた保留中の通知（複数可）が（例えば、通知モジュール２２２によってカテゴリ化されるように）個人対個人のタイプの通知であることを示すための個人アイコンを含む。通知バッジ３１９Ｃは、起動アイコン３１８に関連付けられた保留中の通知（複数可）が肯定的なフィードバック通知であることを示すための「いいね」アイコンを含む。通知バッジ３１９Ｄは、起動アイコン３１８に関連する保留中の通知（複数可）が（例えば、友人又は家族の誕生日のための）重要かつ進行中のイベントリマインダ通知に関連付けられていることを示すための誕生日ケーキアイコンを含む。通知バッジ３１９Ｅ及び３１９Ｆは、人又はユーザに関連付けられたグラフィカル要素を含み、起動アイコン３１８に関連する保留中の通知（複数可）が特定の人又はユーザに（例えば、コンピューティング装置２１０のアドレス帳から）関連付けられていることを示す。その特定の人又はユーザは、通信（電子メール、チャットメッセージ、インスタントメッセージ、テキストメッセージ、ビデオメッセージ、ボイスメール、又は送信者からの任意のその他のタイプの通信）の送信者である。例えば、バッジ３１９Ｅ及び３１９Ｆは、保留中の通知に関連付けられた人若しくはユーザを示す写真、アバター、又は他のグラフィカル要素（例えば、画像、グラフィック、ステッカー、絵文字など）であり得る。
【００８０】
図３Ｂに示すように、起動アイコン３１８が単一のアプリケーション若しくはサービスに関連付けられているとしても、コンピューティング装置２１０は、保留中の通知（複数可）の内容、カテゴリ、又はチャネルを反映する通知バッジ３１９Ａ−３１９Ｄなどの異なるタイプの通知バッジを起動アイコン３１８に持たせ得る。保留中の通知の内容を反映した通知バッジを表示することは、一部のユーザが他のタイプの通知バッジを見ることから持ち得る不安及び／又は混乱を最小限に抑え得る。
【００８１】
図４は、本開示の１つ以上の態様に従う、通知バッジ及び通知プレビューを表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。図４は、図２のコンピューティング装置２１０のコンテキストにおいて以下に説明される。
【００８２】
コンピューティング装置２１０は通知を受信し得る（４０２）。コンピューティング装置２１０は、通知の内容を決定し得る（４０４）。例えば、通知モジュール２２２は、アプリケーション２３０Ａから通知を受け取り、その通知を通知列２３３にて記憶し得る。
【００８３】
コンピューティング装置２１０は、通知の内容を反映するバッジを決定し得る（４０６）。例えば、カテゴリ化モジュール２２４は、その通知が誕生日パーティーについての家族からのメッセージであると決定し、それに応答してその通知を個人対個人のタイプの通知としてカテゴリ化し、通知モジュール２２２は、その通知に図３の通知バッジ３１９Ｂのように見える通知バッジを割り当て得る。
【００８４】
コンピューティング装置２１０は、任意の他の保留中の通知がその通知のソースに関連付けられているかどうかを決定し得る（４０８）。通知のソースに関連付けられた他の通知が現在保留中でない場合（４０８、「いいえ」の分岐）、コンピューティング装置２１０は、通知のソースを起動するためのグラフィカル要素又はその近くにてバッジを表示し得る（４１２）。しかしながら、通知のソースに関連付けられた他の通知が現在保留中である場合（４０８、「はい」分岐）、コンピューティング装置２１０は、通知及び現在保留中の他の通知の内容を反映するためにバッジを更新し得る（４１０）。
【００８５】
例えば、通知モジュール２２２は、アプリケーションモジュール２３０Ａに関連付けられた他の通知に対して通知列２３２を検索し得る。アプリケーションモジュール２１０Ａに関連付けられた第２の保留中の通知を識別することに応答して、通知モジュール２２２は、両方の保留中の通知の内容を反映する通知バッジを決定し得る。第２の通知は、家族からのメッセージにおいて言及された誕生日パーティーのためのイベントリマインダ又はカレンダ予約であり得る。通知モジュール２２２は、両方の通知がパーティー又は誕生日に関連していると決定し、したがって、図３Ｂの通知バッジ３１９Ｄのように見える通知バッジを用いて通知を割り当て得る。２つ以上の通知が無関係である場合、通知モジュール２２２は、通知ソース及び／又は異なる通知に一般的な通知バッジを決定し得る。例えば、通知が２つの無関係なメッセージに関連付けられている場合、通知モジュール２２２は、通知バッジを、通知の一方だけ又は両方に関連するメッセージではなく、一般的なメッセージバッジであると決定し得る。
【００８６】
コンピューティング装置２１０は、通知のソースを起動するためのグラフィカル要素又はその近くにてバッジを表示し得る（４１２）。例えば、通知モジュール２２２は、起動アイコン３１８が表示されるＵＩＣ２１２の位置又はその近くにあるユーザインタフェース３１３内の通知バッジ３１９ＤをＵＩモジュール２２０に表示させる命令をＵＩモジュール２２０に送信し得る。
【００８７】
コンピューティング装置２１０は、通知のソースを起動するためのグラフィカル要素を選択する長押しジェスチャを検出し得る（４１４）。例えば、ＵＩモジュール２２０は、起動アイコン３１８が表示されているＵＩＣ２１２の位置にて長押しジェスチャ３０６が検出されていることを示す情報をＵＩＣ２１２から受信し得る。
【００８８】
コンピューティング装置２１０は、その通知に対するそれぞれの通知メッセージ、及び他の保留中の通知の各々を含む通知プレビューを表示し得る（４１６）。例えば、起動アイコン３１８に関連付けられたアプリケーション又はサービスをジェスチャ３０６に応答して起動するのではなく（例えば、ジェスチャ３０６が短押しジェスチャである場合、ＵＩモジュール２２０が行い得るので）、ＵＩモジュール２２０はＵＩＣ２１２に、通知領域３１５を表示させ得る。通知領域３１５は、アプリケーションモジュール２３０Ａによって生成された２つの保留中の通知に対応する通知メッセージ３１６Ａ及び３１６Ｂを含む。
【００８９】
図５は、本開示の１つ以上の態様に従う、カテゴリ的順序に従って通知メッセージをカテゴリ化し表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。図５は、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【００９０】
図５は、コンピューティング装置２１０によって表示され得る例示的なユーザインタフェースとしてのユーザインタフェース５１３を示す。コンピューティング装置２１０のＵＩモジュール２２０及び通知モジュール２２２は、表示のためのユーザインタフェース５１３をＵＩＣ２１２に出力させ得る。ユーザインタフェース５１３は、ステータスバー５１４Ａ、アプリケーション画面５１４Ｂ、及びお気に入り領域５１４Ｃを含む。アプリケーション画面５１４Ｂの前面又は上に重ねられ、ステータスバー５１４Ａの下から突き出ているユーザインタフェース５１３は、通知領域５１５（例えば通知ペイン）を含む。通知領域５１５内には通知メッセージ５１６Ａ−５１６Ｅがある。通知メッセージ５１６Ａは、「重要かつ進行中の」通知の１つ以上の通知メッセージを表す。通知メッセージ５１６Ｂは、「個人対個人」の通知の１つ以上の通知メッセージを表す。通知メッセージ５１６Ｃは、「通常の」通知の１つ以上の通知メッセージを表す。通知メッセージ５１６Ｄは、「バイザウェイ」通知の１つ以上の通知メッセージを表す。通知メッセージ５１６Ｅは、「システム情報の」通知の１つ以上の通知メッセージを表す。
【００９１】
通知モジュール２２２及びＵＩモジュール２２０は、全ての通知がユーザにとって等しく重要であるとは限らず、したがって、同等に（例えば、時系列などで）提示されるべきではないという前提の下で、図５に示される順序でＵＩＣ２１２に通知メッセージ５１６を表示させ得る。代わりに、通知領域５１５は、ユーザが通知領域５１５を見た瞬間に、自分にとって重要なことをより容易に識別し、それに基づいて行動することを可能にし得る。通知領域５１５は、通知領域５１５内により良い階層を作成するために、通知の異なるカテゴリを分離する一貫した空間的かつ視覚的合図に依存する。
【００９２】
コンピューティング装置２１０は、重要かつ進行中の通知に対する通知メッセージ５１６Ａを他の通知メッセージよりも目立つように表示する。つまり、通知メッセージ５１６Ａが通知領域５１５の最上部にて表示されるので、通知領域５１５が広がって見えるようになると、通知メッセージ５１６Ａが最初に表示される。これは、ユーザがその時点で自分にとって重要なことを識別し、それに基づいて行動することを可能にし得る。開発者は、カスタマイズの手間をかけずに、自分のアプリケーションが通知に値するための相応の顕著性を得ることを可能にし得る。通知モジュール２２２は、アプリケーションが通知を「重要かつ進行中の」通知であるとして自己指定することを可能にし得る。
【００９３】
コンピューティング装置２１０は、個人対個人の通知のための通知メッセージ５１６Ｂを、重要かつ進行中の通知よりも目立たないように表示するが、他の通知よりも目立つように表示する。つまり、通知メッセージ５１６Ｂは、通知領域５１５が広げられるとき通知メッセージ５１６Ｂが２番目に表示されるように、通知領域５１５の上から２番目に表示される。これは、ユーザが他のユーザとのオープンな会話を識別することを可能にし、より速く返信するための方法を提供し得る。
【００９４】
コンピューティング装置２１０は、重要かつ進行中の通知よりも目立たないように、かつ個人対個人及び通常の通知よりも目立たないように、しかしシステム情報の通知よりも目立つようにして、バイザウェイ通知についての通知メッセージ５１６Ｄを表示する。つまり、通知メッセージ５１６Ｂは、通知領域５１５の下から２番目に表示される。これは、これらの重要性の低い通知の強調度合いを弱めることがあり得、そのためユーザは、気になる可能性が高い他のより重要な通知に集中できる。
【００９５】
図６は、本開示の１つ以上の態様に従う、カテゴリ的順序に従って通知メッセージをカテゴリ化し表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。図６は、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【００９６】
コンピューティング装置２１０は、１つ以上の通知を受信し得る（６０２）。例えば、通知モジュール２２２は、アプリケーションモジュール２３０によって生成された１つ以上の通知を受信し得る。
【００９７】
コンピューティング装置２１０は、１つ以上の通知の各々を以下のいずれかとしてカテゴリ化し得る：それらは、重要かつ進行中、個人対個人、通常、バイザウェイ、又はシステム情報の通知（６０４）である。例えば、ヒューリスティック、機械学習モデル、又は他のタイプのモデルに基づくルールベースのモデルを用いて、カテゴリ化モジュール２２４は、１つ以上の通知の各々をカテゴリ化し得る。
【００９８】
コンピューティング装置２１０は、カテゴリに従って１つ以上の通知をグループ化し得る（６０６）。例えば、通知モジュール２２２は、それぞれのカテゴリとともに通知列２３２にて記憶された各通知を、タグ付けするか又はそうでなければ指定し得る。
【００９９】
コンピューティング装置２１０は、グラフィカルユーザインタフェースの通知領域を表示するためのユーザ入力を受信し得る（６０８）。例えば、ＵＩモジュール２２０は、コンピューティング装置２１０のユーザがユーザインタフェース５１３の表示通知領域５１５に入力したことを示す情報をＵＩＣ２１２から受信し得る。
【０１００】
コンピューティング装置２１０は、システム情報の通知に対する通知メッセージが最も目立たないように表示され、バイザウェイ通知に対する通知メッセージは、システム情報の通知に対する通知メッセージよりも目立つように表示され、通常の通知に対する通知メッセージは、バイザウェイ通知に対する通知メッセージよりも目立つように表示され、個人対個人の通知に対する通知メッセージは、通常の通知に対する通知メッセージよりも目立つように表示され、重要かつ進行中の通知に対する通知メッセージは、個人対個人の通知に対する通知メッセージよりも目立つように表示されるように、通知領域を表示し得る（６１０）。例えば、ＵＩモジュール２２０は、通知列２３２にて記憶された保留中の通知を取り出し、ＵＩＣ２１２に、それらのカテゴリタグによって定義される通知領域５１５の特定の区域内に通知を表示させ得る。ＵＩモジュール２２０は、「重要かつ進行中」指定を用いてタグ付けされた通知をより目立つように表示させてもよく、通知のその他の各カテゴリに対しても同様である。
【０１０１】
図７は、本開示の１つ以上の態様に従う、通知ソースが１つ以上の通知チャネルを定義できるように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。図７は、図２のコンピューティング装置２１０のコンテキストにおいて以下に説明される。
【０１０２】
図７は、コンピューティング装置２１０によって表示され得る例示的なユーザインタフェースとしてのユーザインタフェース７１３を示す。コンピューティング装置２１０のＵＩモジュール２２０及び通知モジュール２２２は、表示のためのユーザインタフェース７１３をＵＩＣ２１２に出力させ得る。ユーザインタフェース７１３は、コンピューティング装置２１０によって各通知ソースに提供される一般的な設定メニューである。通知ソースがそれら自体の独自に定義された通知設定画面を有することを可能にするのではなく、通知モジュール２２２は、コンピューティング装置２１０に、ユーザインタフェース７１３と同様に各通知ソースに対して標準化された設定画面を提示させ得る。標準化された設定画面は、通知ソースに対する通知設定全体に渡るユーザ制御、又は個々のチャネルに対するより詳細なレベルの制御をユーザに可能にし得る。つまり、ユーザは、アプリケーションソース全体若しくはアプリケーションソースによって定義された個々の各チャネルに対して通知を有効又は無効にするために、ユーザインタフェース７１３にて入力し得る。このように、単一の通知ソースから来る通知は、各通知が属するチャネルに割り当てられたパラメータによって定義された、異なる属性又はパラメータを有しうる。パラメータの例は、色、着信音、バイブレーションパターン、バイブレーション強度、音の属性、重要度又は優先度のレベル、アイコン、グラフィカル要素、フォント、フォントサイズ、又は通知の可聴、グラフィカル、及び／若しくは触覚的しるしを出力する方法を定義する任意のその他のパラメータを含む。もはや、通知ソースは、全てのそれらの通知に対する共通の通知設定に落ち着く必要がない。
【０１０３】
図８は、本開示の１つ以上の態様に従う、通知ソースが１つ以上の通知チャネルを定義できるように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。図８は、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【０１０４】
コンピューティング装置２１０は、通知ソースによって生成された通知を受信し得る（８０２）。例えば、通知モジュール２２２は、アプリケーションモジュール２３０Ｂから通知を受信し得る。
【０１０５】
コンピューティング装置２１０は、各チャネルが通知ソースによって定義された１つ以上のパラメータを有し、通知ソースによって定義された１セットのチャネルを決定し得る。（８０４）。例えば、通知を生成する前に、アプリケーションモジュール２３０Ｂは、その通知のための１つ以上のチャネルを定義するために、ＡＰＩを介してチャネルモジュール２２６と対話し得る。アプリケーションモジュール２３０Ｂは、ＡＰＩを通して、各チャネルのパラメータに値を割り当て、その値とパラメータをチャネルモジュール２２６に送信し得る。チャネルモジュール２２６はチャネル値及びパラメータを記憶し得る。
【０１０６】
コンピューティング装置２１０は、通知に割り当てられたチャネルのセットから特定のチャネルを決定し得る（８０６）。例えば、通知モジュール２２２は、アプリケーションモジュール２３０Ｂからの通知に関連付けられたメタデータを分析して、それが割り当てられていた特定のチャネルを決定し得る。
【０１０７】
コンピューティング装置２１０は、特定のチャネルの１つ以上のパラメータを決定し得る（８０８）。例えば、チャネルモジュール２２６は、通知のメタデータから決定されたチャネルの１つ以上のパラメータを調べ得る。
【０１０８】
コンピューティング装置２１０は、特定のチャネルの１つ以上のパラメータに従って通知のしるしを出力し得る（８１０）。例えば、通知モジュール２２２は、特定のチャネルの１つ以上のパラメータと共に通知データを通知列２３２にて記憶し得る。それは、ＵＩモジュール２２０がユーザインタフェースの一部としてのしるしとして後続の出力のために通知を取り出すとき、ＵＩモジュール２２０が、通知のしるしが出力され、特定のチャネルの１つ以上のパラメータによって定義される品質を通知のしるしに持たせ得るようにするためである。
【０１０９】
図９Ａから図９Ｆは、本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内の通知のグラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって提示される例示的なグラフィカルユーザインタフェースを示す概念図である。図９Ａから９Ｆは、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【０１１０】
図９Ａから図９Ｆは、コンピューティング装置２１０によって表示され得る例示的なユーザインタフェースとしてのユーザインタフェース９１３を示す。コンピューティング装置２１０のＵＩモジュール２２０及び通知モジュール２２２は、表示のためのユーザインタフェース９１３をＵＩＣ２１２に出力させ得る。ユーザインタフェース９１３は、ステータスバー９１４Ａ、アプリケーション画面９１４Ｂ、及びお気に入り区域９１４Ｃを含む。
【０１１１】
図９Ａは、ステータスバー９１４Ａ内の１セットのグラフィカル要素として表示された通知のグラフィカル要素９１７Ａ−９１７Ｄ（総称して「通知のグラフィカル要素９１７」）を示す。グラフィカル要素のセット内の通知のグラフィカルな各要素９１７は、保留中の通知又は保留中の通知のグループに対応する。ユーザは、コンピューティング装置２１０に通知領域９１５を表示させるためにスワイプジェスチャ９０６をし得る。
【０１１２】
図９Ｂは、通知領域９１５（例えば通知ペイン）が、スワイプジェスチャ９０６に応答して、ステータスバー９１４Ａの下から下方にどのように広がるかを示す。図９Ｂは、ＵＩモジュール２２０が、もはやステータスバー９１４Ａ内ではなく、通知領域９１５Ａ内の、通知領域９１５Ａが見えるようになると通知領域９１５Ａの前縁近くのグラフィカル要素９１７のセットを、ＵＩＣ２１２に表示させる方法をさらに示す。
【０１１３】
図９Ｂにおいて示されるように、通知メッセージ９１６Ａが見えるようになると、通知メッセージ９１６Ａに関連付けられた通知に対応する、通知領域９１５の前縁近くに表示されるグラフィカル要素９１７のセットからのグラフィカル要素９１７Ａは、グラフィカル要素９１７のセットから削除され、それが通知メッセージ９１６Ａ内の位置に移動するようにアニメーション化される。このようにして、ユーザは、グラフィカル要素９１７Ａが通知メッセージ９１６Ａに対応するという事実を知らせる。また、グラフィカル要素９１７のセットにおける残りのグラフィカル要素を数えることによって、ユーザは、通知領域９１Ａ内の残りの（未展開の）通知メッセージの量に関する視覚的な確認を得ることができる。
【０１１４】
図９Ｃにおいて示されるように、ジェスチャ９０６のサイズ（例えば長さ）が大きくなるにつれて、ＵＩモジュール２２０は、通知領域９１５のサイズ（例えば長さ）を同様に比例して大きくさせ得る。通知メッセージ９１６Ｂが見えるようになると、通知メッセージ９１６Ｂに関連付けられた通知に対応する、通知領域９１５の前縁近くに表示されているグラフィカル要素９１７のセットからのグラフィカル要素９１７Ｂは、グラフィカル要素９１７のセットから削除され、それが通知メッセージ９１６Ｂ内の位置に移動するようにアニメーション化される。
【０１１５】
図９Ｄ及び図９Ｅにおいても示されるように、ジェスチャ９０６のサイズがさらに大きくなるにつれて、ＵＩモジュール２２０は通知領域９１５のサイズをさらに大きくし得る。通知メッセージ９１６Ｃが図９Ｄにおいて見えるようになると、通知メッセージ９１６Ｃに関連付けられた通知に対応する、通知領域９１５の前縁の近くに表示されたグラフィカル要素９１７のセットからのグラフィカル要素９１７Ｃは、グラフィカル要素９１７のセットから削除され、それが通知メッセージ９１６Ｃ内の位置に移動するようにアニメーション化される。通知メッセージ９１６Ｄが図９Ｅにおいて見えるようになると、通知メッセージ９１６Ｄに関連付けられた通知に対応する、通知領域９１５の前縁の近くに表示されたグラフィカル要素９１７のセットからのグラフィカル要素９１７Ｄは、グラフィカル要素９１７のセットから削除され、それが通知メッセージ９１６Ｄ内の位置に移動するようにアニメーション化される。
【０１１６】
最後に、図９Ｆにおいて示されるように、通知領域９１５が最大サイズに広がった状態で、グラフィカル要素９１７のセットからの各グラフィカル要素は削除され、対応する通知メッセージ９１６内に配置される。理解されるべきであるが、図９Ａ−図９Ｆの例は、コンピューティング装置２１０によって逆に実行され得る。つまり、通知領域９１５が折り畳まれるとき、視界から折り畳まれて保留中の通知に関連付けられている通知メッセージは、通知領域９１５が完全に折り畳まれるまで通知領域９１５の前縁において表示されるグラフィカル要素９１７のセットに戻して追加されるそれらのそれぞれのグラフィカル要素９１７を有し得る。そのときに、コンピューティング装置２１０は、グラフィカル要素９１７のセットをステータスバー９１４Ａに再び表示させ得る。
【０１１７】
本開示の１つ以上の態様に従う、グラフィカルユーザインタフェースの通知領域内に通知のグラフィカル要素を表示するように構成されている例示的なコンピューティング装置によって実行される例示的な動作を示すフローチャートである。図１０Ａ及び１０Ｂは、図２のコンピューティング装置２１０のコンテキストで以下に説明される。
【０１１８】
図１０Ａにおいて示されるように、コンピューティング装置２１０は、１セットのグラフィカル要素を備えるグラフィカルユーザインタフェースのステータスバーを表示し、そのセットからの各グラフィカル要素は、１セットの保留中の通知からの異なる保留中の通知に対応し得る（１００２）。例えば、コンピューティング装置２１０は、１セットのグラフィカル要素９１７を含むＵＩＣ２１２にてユーザインタフェース９１３を表示し得る。
【０１１９】
コンピューティング装置２１０は、ステータスバーから通知シェードを広げるジェスチャを受け取り得る（１００４）。例えば、ＵＩモジュール２２０は、ステータスバー９１４Ａにて検出されているジェスチャ９０６の指示をＵＩＣ２１２から受信し得る。ＵＩモジュール２２０は、ジェスチャ９０６が通知領域９１５を広げるためのユーザ命令であると決定し得る。
【０１２０】
コンピューティング装置２１０は、通知ペインのサイズがジェスチャの長さに基づき、グラフィカル要素のセットが通知ペインの前縁近くの通知ペイン内に表示されるように、ステータスバーから通知シェードを広げ得る（１００６）。例えば、ＵＩモジュール２２０は、ジェスチャ９０６の長さが増えることに比例して、ＵＩＤ２１２に通知領域９１５の長さを増やさせ得る。このようにして、ＵＩモジュール２２０は、通知領域９１５の前縁を、ジェスチャ９０６を作っている入力ユニットに追従させ得る。
【０１２１】
コンピューティング装置２１０は、保留中の通知のセットからの特定の通知に関連付けられている通知メッセージが、通知ペインにおいて新たに見ることができるかどうかを決定し得る（１００８）。例えば、ＵＩモジュール２２０は、グラフィカル要素９１７のセットからの任意のグラフィカル要素に関連付けられた任意の通知メッセージ９１６が見ることができるどうかを決定し得る。
【０１２２】
通知メッセージが新たに見ることができないと決定することに応答して（１００８、いいえの分岐）、コンピューティング装置２１０は、動作１０１４へ進み得る。しかしながら、通知メッセージが新たに見ることができると決定したことに応答して（１００８、はい分岐）、コンピューティング装置２１０は、特定の通知に関連付けられているグラフィカル要素のセットから特定のグラフィカル要素を削除し、特定のグラフィカル要素を通知ペインの前縁近くに表示しないようにし得る（１０１０）。コンピューティング装置２１０は、通知メッセージ内の特定の通知に関連付けられているグラフィカル要素のセットからの特定のグラフィカル要素を表示し得る（１０１２）。例えば、ジェスチャ９０６のサイズが大きくなるにつれて通知メッセージ９１６Ａが見えるようになると、ＵＩモジュール２２０は、通知領域９１５の前縁の近くの位置から通知メッセージ９１６Ａ内の位置へグラフィカル要素９１７Ａを移動させ得る。
【０１２３】
コンピューティング装置２１０は、ジェスチャの長さが増えたかどうかを決定し得る（１０１４）。ジェスチャの長さが増えると決定することに応答して（１０１４、はいの分岐）、コンピューティング装置２１０は、動作（１００６）−（１０１４）を繰り返し得る。例えば、ＵＩモジュール２２０は、グラフィカル要素９１７の各々を、通知領域９１５の前縁近くの位置からそれぞれの通知メッセージ９１６内の位置へ移動させ得る。
【０１２４】
ジェスチャの長さが増えなかったと決定することに応答して（１０１４、いいえの分岐）、コンピューティング装置２１０は、図１０Ｂにおいて示された動作とともに続くステップ「Ａ」に進み得る。
【０１２５】
図１０Ａにおいて示されるように、コンピューティング装置２１０は、ジェスチャの長さが減少したかどうかを決定し得る（１０１６）。ジェスチャの長さが減少しなかったと決定することに応じて（１０１６、いいえの分岐）、コンピューティング装置２１０は、図１０Ａの動作１０１４とともに続くステップ「Ｂ」に進み得る。
【０１２６】
ジェスチャの長さが減少したと決定することに応答して（１０１６、はいの分岐）、コンピューティング装置２１０は、通知ペインのサイズがジェスチャの長さに基づくように、ステータスバーからの通知シェードを折り畳み得る（１０１８）。例えば、ユーザは、ジェスチャ９０６に類似したジェスチャをし得るが、そのジェスチャは反対方向になされる。したがって、通知領域９１５が広げられると、ジェスチャ９０６は、通知領域９１５を折り畳むために通知領域９１５Ａの前縁からステータスバー９１４Ａへ上に向かって戻るように移動し得る。
【０１２７】
コンピューティング装置２１０は、未だ保留中の通知のうちの以前に見えていた通知メッセージがもはや見えていないかどうかを決定し得る（１０２０）。未だ保留中の通知のうちの以前に見えていた通知メッセージがもはや見えていないと決定することに応答して（１０２０、いいえ分岐）、コンピューティング装置２１０は、図１０Ａの動作１０１４とともに続くステップ「Ｂ」へ進み得る。例えば、保留中の通知がこれ以上無い場合、ＵＩモジュール２２０は、通知領域９１５の前縁にて、及び最終的にはステータスバー９１４Ａにて通知のグラフィカル要素を表示するかどうかを決定する必要はない。
【０１２８】
未だ保留中の通知のうち少なくとも１つの以前に見えていた通知メッセージがもはや見えていないと決定することに応答して（１０２０、はい分岐）、コンピューティング装置２１０は、もはや見えていない以前に見えていた通知メッセージに関連した未だ保留中の通知に関連付けられたグラフィカル要素のセットに、任意のグラフィカル要素を追加し得る（１０２２）。コンピューティング装置２１０は、通知ペインの前縁近くの通知ペイン内にグラフィカル要素のセットを表示し得る（１０２４）。
【０１２９】
例えば、通知領域が折り畳まれると、ＵＩモジュール２２０は、通知領域９１５の前縁に表示されるそれぞれの通知メッセージ９１６内に表示されないように位置を移動するために、未だ保留中の通知に関連付けられた任意のグラフィカル要素９１７を再配置する。ジェスチャ９０６がステータスバー９１４Ａに達すると、ＵＩモジュール２２０は、通知領域９１５の前縁において表示されている任意のグラフィカル要素９１７をステータスバー９１４Ａ内に表示させ得る。
【０１３０】
例１．  ある方法は：コンピューティング装置が、通知ソースによって生成された通知を受信すること；上記コンピューティング装置が、上記通知ソースによって定義されたチャネルのセットを決定し、各チャネルが上記通知ソースによって定義された１つ以上のパラメータを有すること；上記コンピューティング装置が、上記通知に割り当てられたチャネルの上記セットから特定のチャネルを決定すること；上記コンピューティング装置が、上記特定のチャネルの１つ以上のパラメータを決定すること；及び、上記コンピューティング装置が、上記特定のチャネルの上記１つ以上のパラメータに従って上記通知のしるしを出力することを備える。
【０１３１】
例２．  例１に記載の方法は：上記特定の通知チャネルを示すグラフィカル要素を含む通知バッジを決定すること；及び上記コンピューティング装置が、上記通知の上記ソースを起動するためのグラフィカル要素又はその近くにて上記通知バッジを表示することをさらに備える。
【０１３２】
例３．  例１〜２のいずれか１例に記載の方法において、上記通知の上記しるしは、可聴アラート、視覚的アラート、触覚的アラート、又は音声アラートのうちの１つ以上であり、上記特定のチャネルの上記１つ以上のパラメータは、上記可聴アラート、上記視覚的アラート、上記触覚的アラート又は上記音声アラートの１つ以上の属性を定義する。
【０１３３】
例４．  例１〜３のいずれか１例に記載の方法において、上記通知の上記しるしは視覚的アラートであり、上記１つ以上のパラメータは：上記視覚的アラートの色、上記視覚的アラートのアイコン、上記視覚的アラートのグラフィカル要素、上記視覚的アラートのフォント、又は上記視覚的アラートのフォントサイズのうちの少なくとも１つを含む。
【０１３４】
例５．  例１〜４のいずれか１例に記載の方法において、上記通知の上記しるしは可聴アラートであり、上記１つ以上のパラメータは、上記可聴アラートの着信音又は音の属性のうちの少なくとも１つを含む。
【０１３５】
例６．  例１〜５のいずれか１例に記載の方法において、上記通知の上記しるしは触覚的アラートであり、上記１つ以上のパラメータは、上記触覚的アラートのバイブレーションパターン又はバイブレーション強度のうちの少なくとも１つを含む。
【０１３６】
例７．  例１〜６のいずれか１例に記載の方法において、上記１つ以上のパラメータは、上記通知の重要度又は優先度のレベルのうちの少なくとも１つを含む。
【０１３７】
例８．  例１〜７のいずれか一例に記載の方法において、上記通知は第１の通知であり、上記特定のチャネルは、第１の通知チャネルである。上記方法は：上記コンピューティング装置が、上記第１の通知とは異なる、上記通知ソースによって生成される第２の通知を受信すること；上記コンピューティング装置が、上記第１の通知チャネルとは異なる、上記第２の通知に割り当てられたチャネルの上記セットから第２のチャネルを決定すること；上記コンピューティング装置が、上記第１の通知チャネルの上記１つ以上のパラメータとは異なる、上記第２の通知チャネルの１つ以上のパラメータを決定すること；及び上記コンピューティング装置が、上記第２の通知チャネルの上記１つ以上のパラメータに従って、上記第２の通知のしるしを出力することをさらに備える。
【０１３８】
例９．  例１〜８のいずれか１例に記載の方法を実行するように構成されている少なくとも１つのプロセッサを備えるコンピューティング装置。
【０１３９】
例１０．  実行されたときにコンピューティング装置の少なくとも１つのプロセッサに例１〜８のいずれか１例に記載の方法を実行させる命令を備える、コンピュータ読み取り可能な記憶媒体。
【０１４０】
例１１．  コンピュータプログラム製品であって、上記プログラムがコンピューティング装置の少なくとも１つのプロセッサによって実行されるときに、上記コンピューティング装置に例１〜８のいずれか１例に記載の方法を実行させる命令を備える、コンピュータプログラム製品。
【０１４１】
例１２．  例１〜８のいずれか１例に記載の方法を実行するための手段を備えるシステム。
【０１４２】
例１３．  ある方法は：コンピューティング装置が、ソースから通知を受信すること；上記コンピューティング装置が、上記通知の内容を決定すること；上記コンピューティング装置が、上記内容に少なくとも部分的に基づいて、上記内容を反映する通知バッジを決定すること；上記コンピューティング装置が、上記コンピューティング装置によって受信された任意の他の保留中の通知が上記ソースに関連付けられているかどうかを決定すること；  上記コンピューティング装置によって受信された他の保留中の通知が上記ソースに関連付けられていると決定することに応答して、上記コンピューティング装置が、上記通知バッジを更新して、上記通知の上記内容及び上記他の保留中の通知の内容を反映する；上記コンピューティング装置が、上記通知の上記ソースを起動するためのグラフィカル要素又はその近くにて上記通知バッジを表示すること；コンピュータ装置が、上記通知の上記ソースを起動するための上記グラフィカル要素を選択する長押しジェスチャを検出すること；並びに、上記長押しジェスチャを検出することに応答して、コンピューティング装置が、上記通知に対するそれぞれの通知メッセージ、及び任意の他の保留中の通知を含む通知プレビューを表示することを備える。
【０１４３】
例１４．  ある方法は：コンピューティング装置が、ソースから１つ以上の通知を受信すること；上記コンピューティング装置が、上記１つ以上の通知の各々を：重要かつ進行中、個人対個人、通常、バイザウェイ、又はシステムの情報のいずれかにカテゴリ化すること；上記コンピューティング装置が、カテゴリに従って上記１つ以上の通知をグループ化すること；上記コンピュータ装置が、グラフィカルユーザインタフェースの通知領域を表示するためのユーザ入力を受信すること；並びに、上記コンピューティング装置が：上記システム情報の通知のための通知メッセージが最も目立たないように表示され、上記バイザウェイ通知のための通知メッセージが、上記システム情報の通知のための上記通知メッセージよりも目立つように表示され、上記通常の通知のための通知メッセージが、上記バイザウェイの通知の上記通知メッセージよりも目立つように表示され、上記個人対個人の通知のための通知メッセージが、上記通常の通知のための上記通知メッセージよりも目立つように表示され、かつ上記重要かつ進行中の通知のための通知メッセージが、上記個人対個人の通知のための上記通知メッセージよりも目立つように表示されるように、上記通知領域を表示することを備える。
【０１４４】
例１５．  ある方法は：コンピューティング装置が、通知ソースによって生成された通知を受信すること；上記コンピューティング装置が、上記通知ソースによって定義された１セットのチャネルを決定し、上記通知ソースによって定義された１つ以上のパラメータを各チャネルが有すること；上記コンピューティング装置が、上記通知に割り当てられたチャネルの上記セットから特定のチャネルを決定すること；上記コンピューティング装置が、上記特定のチャネルの１つ以上のパラメータを決定すること；及び、上記コンピューティング装置が、上記特定のチャネルの上記１つ以上のパラメータに従って上記通知のしるしを出力することを備える。
【０１４５】
例１６．  ある方法は：コンピューティング装置が、１セットのグラフィカル要素を備えるグラフィカルユーザインタフェースのステータスバーを表示し、上記１セットからの各グラフィカル要素が、１セットの保留中の通知からの異なる保留中の通知に対応すること；上記コンピューティング装置が、上記ステータスバーから通知シェードを広げるジェスチャを受信すること；上記通知ペインのサイズが上記ジェスチャの長さに基づき、グラフィカル要素の上記セットが上記通知ペインの前縁近くの上記通知ペイン内に表示されるように、上記コンピューティング装置が、上記ステータスバーからの上記通知シェードを広げること；上記コンピューティング装置が、保留中の通知の上記セットからの特定の通知に関連付けられている通知メッセージが通知ペインにおいて新たに見えるかどうかを決定すること；並びに、通知メッセージが新たに見ることができると決定することに応答して：上記コンピューティング装置が、上記特定の通知に関連付けられたグラフィカル要素の上記セットから特定のグラフィカル要素を削除すること；上記コンピューティング装置が、上記通知ペインの上記前縁近くの上記特定のグラフィカル要素の表示をやめること；及び、上記コンピュータ装置が、上記通知メッセージ内の上記特定の通知に関連付けられているグラフィカル要素の上記セットからの上記特定のグラフィカル要素を表示することを備える。
【０１４６】
例１７．  例１３〜１６のいずれか１例に記載の方法を実行するための手段を備えるシステム。
【０１４７】
例１８．  少なくとも１つのプロセッサ、及び実行されると少なくとも上記１つのプロセッサに例１３〜１６のいずれか１例に記載の方法を実行させる命令を備えるメモリを備えるコンピューティング装置。
【０１４８】
例１９．  実行されると、コンピューティング装置の少なくとも１つのプロセッサに、例１３〜１６のいずれか１例に記載の方法を実行させる命令を備えるコンピュータ読み取り可能な記憶媒体。
【０１４９】
例２０．  コンピュータプログラム製品であって、上記プログラムがコンピューティング装置の少なくとも１つのプロセッサによって実行されると、上記コンピューティング装置に請求項１３〜１６のいずれか１例に記載の方法を実行させる命令を備えるコンピュータプログラム製品。
【０１５０】
限定ではなく例示として、そのようなコンピュータ読み取り可能な記憶媒体は、所望のプログラムコードを命令若しくはデータ構造の形態で記憶するために使用することができ、かつコンピュータによってアクセスすることができる、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ若しくは他の光学ディスクストレージ、磁気ディスクストレージ若しくは他の磁気ストレージ装置、フラッシュメモリ、又は任意の他の記憶媒体を備え得る。また、任意の接続は、適切にコンピュータ読み取り可能な媒体と称される。例えば、同軸ケーブル、光ファイバケーブル、撚り対線、デジタル加入者線（ＤＳＬ）、又は、赤外線、無線通信及びマイクロ波のような無線技術を使用して、命令がウェブサイト、サーバまたは他のリモートソースから伝達される場合、当該同軸ケーブル、光ファイバケーブル、撚り対線、ＤＳＬ、若しくは、赤外線、無線通信及びマイクロ波のような無線技術は、媒体の定義に含まれる。しかしながら、コンピュータ読み取り可能な記憶媒体及びデータ記憶媒体は、接続、搬送波、信号又は他の一時的な媒体を含んでいないが、その代りに、一時的でない有形の記憶媒体に関するということが理解されるべきである。本願明細書において使用されるようなディスク（ｄｉｓｋおよびｄｉｓｃ）は、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタルバーサタイルディスク（ＤＶＤ）、フロッピー（登録商標）ディスク及びブルーレイディスクを含んでおり、ディスク（ｄｉｓｋｓ）は通常磁気的にデータを再生するものである一方、ディスク（ｄｉｓｃｓ）はレーザによりデータを光学的に再生するものである。上記の組み合わせも、コンピュータ読み取り可能な媒体の範囲内に含まれるべきである。
【０１５１】
命令は、１つ以上のプロセッサによって実行され、例えば、１つ以上のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ：application specific integrated circuit）、フィールドプログラマブルロジックアレイ（field programmable logic array）、又は他の同等な集積論理回路若しくは離散論理回路によって実行され得る。したがって、本願明細書において使用される「プロセッサ」という用語は、前述の構造、又は、本願明細書において記載される技術の実装に好適な任意の他の構造のいずれかを指し得る。さらに、いくつかの態様において、本明細書に記載の機能は、専用のハードウェア及び／又はソフトウェアモジュール内に提供され得る。また、本技術は、１つ以上の回路又は論理要素において完全に実装することができる。
【０１５２】
この開示の技術は、無線ハンドセット、集積回路（ＩＣ）若しくはＩＣのセット（例えばチップセット）を含む幅広い種類の装置又は機器において実装され得る。様々な構成要素、モジュール又はユニットは、開示された技術を実行するように構成されている装置の機能的な側面を強調するために本開示において記載されているが、必ずしも異なるハードウェアユニットによる実現を要求していない。むしろ、上述したように、様々なユニットは、ハードウェアユニットにおいて組み合わされ得るか、又は、好適なソフトウェア及び／若しくはファームウェアと併せて、上述したような１つ以上のプロセッサを含む相互に動作するハードウェアユニットの集合によって提供され得る。
【０１５３】
様々な具体例について説明した。これらの及びその他の具体例は以下の請求項の範囲に含まれる。
【図１】
0006957632.tif 000002
【図２】
0006957632.tif 000003
【図３Ａ】
0006957632.tif 000004
【図３Ｂ】
0006957632.tif 000005
【図４】
0006957632.tif 000006
【図５】
0006957632.tif 000007
【図６】
0006957632.tif 000008
【図７】
0006957632.tif 000009
【図８】
0006957632.tif 000010
【図９Ａ】
0006957632.tif 000011
【図９Ｂ】
0006957632.tif 000012
【図９Ｃ】
0006957632.tif 000013
【図９Ｄ】
0006957632.tif 000014
【図９Ｅ】
0006957632.tif 000015
【図９Ｆ】
0006957632.tif 000016
【図１０Ａ】
0006957632.tif 000017
【図１０Ｂ】
0006957632.tif 000018