説明

装置、方法、及びプログラム

【課題】タッチスクリーンディスプレイを備える装置において、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える場合の操作性を向上させること。
【解決手段】装置(例えば、スマートフォン)は、タッチスクリーンディスプレイ2と、コントローラとを備える。タッチスクリーンディスプレイ2は、アプリケーションの画面を表示する。コントローラは、第1アプリケーションがフォアグランドで実行され第2アプリケーションがバックグランドで実行されているときにタッチスクリーンディスプレイに対して第1ジェスチャが行われた場合には第1アプリケーションに第1ジェスチャに応じた動作を行わせ、第1アプリケーションがフォアグランドで実行され第2アプリケーションがバックグランドで実行されているときにタッチスクリーンディスプレイに対して第2ジェスチャが行われた場合には第2アプリケーションをフォアグランドで実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本出願は、装置、方法、及びプログラムに関する。特に、本出願は、タッチスクリーンを有する装置、その装置を制御する方法、及びその装置を制御するためのプログラムに関する。
【背景技術】
【0002】
タッチスクリーンを備えるタッチスクリーンデバイスが知られている。タッチスクリーンデバイスは、例えば、スマートフォン及びタブレットを含むが、これらに限定されない。タッチスクリーンデバイスは、タッチスクリーンを介して指、ペン、又はスタイラスペンのジェスチャを検出する。そして、タッチスクリーンデバイスは、検出したジェスチャに従って動作する。検出したジェスチャに従った動作の例は、例えば、特許文献1に記載されている。
【0003】
タッチスクリーンデバイスの基本的な動作は、デバイスに搭載されるOS(Operating System)によって実現される。タッチスクリーンデバイスに搭載されるOSは、例えば、Android(登録商標)、BlackBerry(登録商標) OS、iOS、Symbian(登録商標) OS、及びWindows(登録商標) Phoneを含むが、これらに限定されない。
【0004】
タッチスクリーンデバイスには、フォアグランドおよびバックグランドで異なるアプリケーションを実行することができるものがある。このようなデバイスの多くは、利用者の操作により、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替えることができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2008/086302号
【発明の概要】
【発明が解決しようとする課題】
【0006】
フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える場合の操作性を向上させることができる装置、方法、及びプログラムに対するニーズがある。
【課題を解決するための手段】
【0007】
1つの態様に係る装置は、タッチスクリーンディスプレイと、コントローラとを備える。タッチスクリーンディスプレイは、アプリケーションの画面を表示する。コントローラは、第1アプリケーションがフォアグランドで実行され第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合には前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせ、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合には前記第2アプリケーションをフォアグランドで実行する。
【0008】
1つの態様に係る方法は、タッチスクリーンディスプレイを備える装置を制御する方法であって、第1アプリケーションを実行するステップと、第2アプリケーションを実行するステップと、前記第1アプリケーションの画面を前記タッチスクリーンディスプレイに表示するステップと、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合に、前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせるステップと、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合に、前記第2アプリケーションをフォアグランドで実行するステップと、を含む。
【0009】
1つの態様に係るプログラムは、タッチスクリーンディスプレイを備える装置に、第1アプリケーションを実行するステップと、第2アプリケーションを実行するステップと、前記第1アプリケーションの画面を前記タッチスクリーンディスプレイに表示するステップと、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合に、前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせるステップと、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合に、前記第2アプリケーションをフォアグランドで実行するステップと、を実行させる。
【図面の簡単な説明】
【0010】
【図1】図1は、実施形態に係るスマートフォンの斜視図である。
【図2】図2は、スマートフォンの正面図である。
【図3】図3は、スマートフォンの背面図である。
【図4】図4は、ホーム画面の例を示す図である。
【図5】図5は、スマートフォンのブロック図である。
【図6】図6は、テーブルに記憶される内容の例を示す図である。
【図7】図7は、実施形態に係るスマートフォンが行う制御の第1の例を示す図である。
【図8】図8は、実施形態に係るスマートフォンが行う制御の第2の例を示す図である。
【図9】図9は、実施形態に係るスマートフォンが行う制御の第3の例を示す図である。
【図10】図10は、実施形態に係るスマートフォンが行う制御の第4の例を示す図である。
【図11】図11は、実施形態に係るスマートフォンが行う制御の第5の例を示す図である。
【図12】図12は、実施形態に係るスマートフォンが行う制御の第6の例を示す図である。
【図13】図13は、実施形態に係るスマートフォンが行う制御の処理手順を示すフローチャートである。
【図14】図14は、実施形態に係るスマートフォンが行う制御の第1の変形例を示す図である。
【図15】図15は、実施形態に係るスマートフォンが行う制御の第2の変形例を示す図である。
【図16】図16は、実施形態に係るスマートフォンが行う制御の第3の変形例を示す図である。
【発明を実施するための形態】
【0011】
本発明を実施するための実施形態を、図面を参照しつつ詳細に説明する。以下では、タッチスクリーンを備える装置の例として、スマートフォンについて説明する。
【0012】
(実施形態)
図1から図3を参照しながら、実施形態に係るスマートフォン1の全体的な構成について説明する。図1から図3に示すように、スマートフォン1は、ハウジング20を有する。ハウジング20は、フロントフェイス1Aと、バックフェイス1Bと、サイドフェイス1C1〜1C4とを有する。フロントフェイス1Aは、ハウジング20の正面である。バックフェイス1Bは、ハウジング20の背面である。サイドフェイス1C1〜1C4は、フロントフェイス1Aとバックフェイス1Bとを接続する側面である。以下では、サイドフェイス1C1〜1C4を、どの面であるかを特定することなく、サイドフェイス1Cと総称することがある。
【0013】
スマートフォン1は、タッチスクリーンディスプレイ2と、ボタン3A〜3Cと、照度センサ4と、近接センサ5と、レシーバ7と、マイク8と、カメラ12とをフロントフェイス1Aに有する。スマートフォン1は、スピーカ11と、カメラ13とをバックフェイス1Bに有する。スマートフォン1は、ボタン3D〜3Fと、コネクタ14とをサイドフェイス1Cに有する。以下では、ボタン3A〜3Fを、どのボタンであるかを特定することなく、ボタン3と総称することがある。
【0014】
タッチスクリーンディスプレイ2は、ディスプレイ2Aと、タッチスクリーン2Bとを有する。図1の例では、ディスプレイ2A及びタッチスクリーン2Bはそれぞれ略長方形状であるが、ディスプレイ2A及びタッチスクリーン2Bの形状はこれに限定されない。ディスプレイ2A及びタッチスクリーン2Bは、それぞれが正方形又は円形等のどのような形状もとりうる。図1の例では、ディスプレイ2A及びタッチスクリーン2Bは重ねて配置されているが、ディスプレイ2A及びタッチスクリーン2Bの配置はこれに限定されない。ディスプレイ2A及びタッチスクリーン2Bは、例えば、並べて配置されてもよいし、離して配置されてもよい。図1の例では、ディスプレイ2Aの長辺はタッチスクリーン2Bの長辺に沿っており、ディスプレイ2Aの短辺はタッチスクリーン2Bの短辺に沿っているが、ディスプレイ2A及びタッチスクリーン2Bの重ね方はこれに限定されない。ディスプレイ2Aとタッチスクリーン2Bとが重ねて配置される場合、例えば、ディスプレイ2Aの1ないし複数の辺がタッチスクリーン2Bのいずれの辺とも沿っていなくてもよい。
【0015】
ディスプレイ2Aは、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機ELディスプレイ(OELD:Organic Electro−Luminescence Display)、又は無機ELディスプレイ(IELD:Inorganic Electro−Luminescence Display)等の表示デバイスを備える。ディスプレイ2Aは、文字、画像、記号、及び図形等を表示する。
【0016】
タッチスクリーン2Bは、タッチスクリーン2Bに対する指、ペン、又はスタイラスペン等の接触を検出する。タッチスクリーン2Bは、複数の指、ペン、又はスタイラスペン等がタッチスクリーン2Bに接触した位置を検出することができる。以下の説明では、タッチスクリーン2Bに対して接触する指、ペン、又はスタイラスペン等を、「接触オブジェクト(接触物)」と呼ぶことがある。
【0017】
タッチスクリーン2Bの検出方式は、静電容量方式、抵抗膜方式、表面弾性波方式(又は超音波方式)、赤外線方式、電磁誘導方式、及び荷重検出方式等の任意の方式でよい。以下の説明では、説明を簡単にするため、利用者はスマートフォン1を操作するために指を用いてタッチスクリーン2Bに接触するものと想定する。
【0018】
スマートフォン1は、タッチスクリーン2Bにより検出された接触、接触が検出された位置、接触が検出された位置の変化、接触が検出された間隔、及び接触が検出された回数の少なくとも1つに基づいてジェスチャの種別を判別する。ジェスチャは、タッチスクリーン2Bに対して行われる操作である。スマートフォン1によって判別されるジェスチャは、例えば、タッチ、ロングタッチ、リリース、スワイプ、タップ、ダブルタップ、ロングタップ、ドラッグ、フリック、ピンチイン、及びピンチアウトを含むがこれらに限定されない。
【0019】
「タッチ」は、タッチスクリーン2Bに指が触れるジェスチャである。スマートフォン1は、タッチスクリーン2Bに指が接触するジェスチャをタッチとして判別する。「ロングタッチ」は、タッチスクリーン2Bに指が一定時間より長く触れるジェスチャである。スマートフォン1は、タッチスクリーン2Bに指が一定時間より長く接触するジェスチャをロングタッチとして判別する。
【0020】
「リリース」は、指がタッチスクリーン2Bから離れるジェスチャである。スマートフォン1は、指がタッチスクリーン2Bから離れるジェスチャをリリースとして判別する。「スワイプ」は、指がタッチスクリーン2Bに接触したままで移動するジェスチャである。スマートフォン1は、指がタッチスクリーン2Bに接触したままで移動するジェスチャをスワイプとして判別する。
【0021】
「タップ」は、タッチに続いてリリースをするジェスチャである。スマートフォン1は、タッチに続いてリリースをするジェスチャをタップとして判別する。「ダブルタップ」は、タッチに続いてリリースをするジェスチャが2回連続するジェスチャである。スマートフォン1は、タッチに続いてリリースをするジェスチャが2回連続するジェスチャをダブルタップとして判別する。
【0022】
「ロングタップ」は、ロングタッチに続いてリリースをするジェスチャである。スマートフォン1は、ロングタッチに続いてリリースをするジェスチャをロングタップとして判別する。「ドラッグ」は、移動可能なオブジェクトが表示されている領域を始点としてスワイプをするジェスチャである。スマートフォン1は、移動可能なオブジェクトが表示されている領域を始点としてスワイプをするジェスチャをドラッグとして判別する。
【0023】
「フリック」は、指が、タッチスクリーン2Bに触れた後移動しながらタッチスクリーン2Bから離れるジェスチャである。すなわち、「フリック」は、タッチに続いて指が移動しながらリリースが行われるジェスチャである。スマートフォン1は、指が、タッチスクリーン2Bに触れた後移動しながらタッチスクリーン2Bから離れるジェスチャをフリックとして判別する。フリックは、指が一方方向へ移動しながら行われることが多い。フリックは、指が画面の上方向へ移動する「上フリック」、指が画面の下方向へ移動する「下フリック」、指が画面の右方向へ移動する「右フリック」、指が画面の左方向へ移動する「左フリック」等を含む。フリックにおける指の移動は、スワイプにおける指の移動よりも素早いことが多い。
【0024】
「ピンチイン」は、複数の指が互いに近付く方向にスワイプするジェスチャである。スマートフォン1は、タッチスクリーン2Bにより検出されるある指の位置と他の指の位置との間の距離が短くなるジェスチャをピンチインとして判別する。「ピンチアウト」は、複数の指が互いに遠ざかる方向にスワイプするジェスチャである。スマートフォン1は、タッチスクリーン2Bにより検出されるある指の位置と他の指の位置との間の距離が長くなるジェスチャをピンチアウトとして判別する。
【0025】
本実施形態では、1本の指により行われるジェスチャを「シングルタッチジェスチャ」と呼ぶことがある。本実施形態では、2本以上の指により行われるジェスチャを「マルチタッチジェスチャ」と呼ぶことがある。ピンチインおよびピンチアウトは、マルチタッチジェスチャである。タップ、フリックおよびスワイプ等は、1本の指で行われればシングルタッチジェスチャであり、2本以上の指で行われればマルチタッチジェスチャである。
【0026】
スマートフォン1は、タッチスクリーン2Bを介して判別するこれらのジェスチャに従って動作を行う。このため、利用者にとって直感的で使いやすい操作性が実現される。判別されるジェスチャに従ってスマートフォン1が行う動作は、ディスプレイ2Aに表示されている画面に応じて異なることがある。以下の説明では、説明を簡単にするために、「タッチスクリーン2Bがジェスチャを検出し、検出されたジェスチャの種別をスマートフォン1がXと判別すること」を、「スマートフォン1がXを検出する」、又は「コントローラがXを検出する」と記載することがある。
【0027】
図4を参照しながら、ディスプレイ2Aに表示される画面の例について説明する。図4は、ホーム画面の例を示している。ホーム画面は、デスクトップ、待受画面、アイドル画面又は標準画面と呼ばれることもある。ホーム画面は、ディスプレイ2Aに表示される。ホーム画面は、スマートフォン1にインストールされているアプリケーションのうち、どのアプリケーションを実行するかを利用者に選択させる画面である。スマートフォン1は、ホーム画面で選択されたアプリケーションをフォアグランドで実行する。フォアグランドで実行されるアプリケーションの画面は、ディスプレイ2Aに表示される。
【0028】
スマートフォン1は、ホーム画面にアイコンを配置することができる。図4に示すホーム画面40には、複数のアイコン50が配置されている。それぞれのアイコン50は、スマートフォン1にインストールされているアプリケーションと予め対応付けられている。スマートフォン1は、アイコン50に対するジェスチャを検出すると、ジェスチャが検出されたアイコン50に対応付けられているアプリケーションを実行する。例えば、スマートフォン1は、メールアプリケーションに対応付けられたアイコン50に対するタップが検出されると、メールアプリケーションを実行する。
【0029】
アイコン50は、画像と文字列を含む。アイコン50は、画像に代えて、記号又は図形を含んでもよい。アイコン50は、画像又は文字列のいずれか一方を含まなくてもよい。アイコン50は、配置パターンに基づいて配置される。アイコン50の背後には、壁紙41が表示される。壁紙は、フォトスクリーン、バックスクリーン、アイドル画像又は背景画像と呼ばれることもある。スマートフォン1は、任意の画像を壁紙41として用いることができる。スマートフォン1は、壁紙41として表示する画像を利用者が選択できるように構成されてもよい。
【0030】
スマートフォン1は、複数のホーム画面を有していてよい。スマートフォン1は、例えば、ホーム画面の数を利用者による設定に従って決定する。スマートフォン1は、ホーム画面の数が複数であっても、選択された1つをディスプレイ2Aに表示する。
【0031】
スマートフォン1は、ディスプレイ2Aに表示するホーム画面を変更することができる。スマートフォン1は、ホーム画面の1つを表示中にジェスチャが検出されると、ディスプレイ2Aに表示するホーム画面を別のホーム画面に変更する。例えば、スマートフォン1は、右フリックを検出すると、ディスプレイ2Aに表示するホーム画面を1つ左のホーム画面に変更する。例えば、スマートフォン1は、左フリックを検出すると、ディスプレイ2Aに表示するホーム画面を1つ右のホーム画面に変更する。スマートフォン1は、第1のホーム画面をディスプレイ2Aに表示中にジェスチャが検出されると、ディスプレイ2Aに表示される第1のホーム画面の面積が徐々に狭くなり、ディスプレイ2Aに表示される第2のホーム画面の面積が徐々に広くなるようにディスプレイ2Aに表示するホーム画面を第1のホーム画面から第2のホーム画面へ変更する。スマートフォン1は、第1のホーム画面が第2のホーム画面に即座に置き換わるようにホーム画面を切り替えてもよい。
【0032】
ディスプレイ2Aの上端には、領域42が設けられている。領域42には、電源の残量を示す残量マーク43、及び通信用の電波の電界強度を示す電波レベルマーク44が表示される。スマートフォン1は、領域42に、時刻、天気、実行中のアプリケーション、通信システムの種別、電話のステータス、装置のモード、装置に生じたイベント等を表示してもよい。このように、領域42は、利用者に対して各種の通知を行うために用いられる。領域42は、ホーム画面40以外の画面でも設けられることがある。領域42が設けられる位置は、ディスプレイ2Aの上端に限定されない。
【0033】
ホーム画面40の上下方向について説明する。以下の説明では、ホーム画面40の上下方向は、ディスプレイ2Aに表示される文字または画像の上下方向を基準として決定されるものとする。したがって、図4に示すホーム画面40では、タッチスクリーンディスプレイ2の長手方向において領域42に近い側が上側であり、領域42から遠い側が下側である。そして、領域42において電波レベルマーク44が表示されている側が右側であり、領域42において残量マーク43が表示されている側が左側である。
【0034】
図4に示したホーム画面40は、例であり、各種の要素の形態、各種の要素の配置、ホーム画面40の数、及びホーム画面40での各種の操作の仕方等は上記の説明の通りでなくてもよい。
【0035】
図5は、スマートフォン1のブロック図である。スマートフォン1は、タッチスクリーンディスプレイ2と、ボタン3と、照度センサ4と、近接センサ5と、通信ユニット6と、レシーバ7と、マイク8と、ストレージ9と、コントローラ10と、スピーカ11と、カメラ12及び13と、コネクタ14と、加速度センサ15と、方位センサ16と、ジャイロスコープ17とを有する。
【0036】
タッチスクリーンディスプレイ2は、上述したように、ディスプレイ2Aと、タッチスクリーン2Bとを有する。ディスプレイ2Aは、文字、画像、記号、又は図形等を表示する。タッチスクリーン2Bは、ジェスチャを検出する。
【0037】
ボタン3は、利用者によって操作される。ボタン3は、ボタン3A〜ボタン3Fを有する。コントローラ10はボタン3と協働することによってボタン3に対する操作を検出する。ボタン3に対する操作は、例えば、クリック、ダブルクリック、トリプルクリック、プッシュ、及びマルチプッシュを含むが、これらに限定されない。
【0038】
ボタン3A〜3Cは、例えば、ホームボタン、バックボタンまたはメニューボタンである。ボタン3Dは、例えば、スマートフォン1のパワーオン/オフボタンである。ボタン3Dは、スリープ/スリープ解除ボタンを兼ねてもよい。ボタン3E及び3Fは、例えば、音量ボタンである。
【0039】
照度センサ4は、スマートフォン1の周囲光の照度を検出する。照度は、光の強さ、明るさ、又は輝度を示す。照度センサ4は、例えば、ディスプレイ2Aの輝度の調整に用いられる。近接センサ5は、近隣の物体の存在を非接触で検出する。近接センサ5は、磁界の変化または超音波の反射波の帰還時間の変化等に基づいて物体の存在を検出する。近接センサ5は、例えば、タッチスクリーンディスプレイ2が顔に近付けられたことを検出する。照度センサ4及び近接センサ5は、一つのセンサとして構成されていてもよい。照度センサ4は、近接センサとして用いられてもよい。
【0040】
通信ユニット6は、無線により通信する。通信ユニット6によってサポートされる通信方式は、無線通信規格である。無線通信規格として、例えば、2G、3G、4G等のセルラーフォンの通信規格がある。セルラーフォンの通信規格として、例えば、LTE(Long Term Evolution)、W−CDMA(Wideband Code Division Multiple Access)、CDMA2000、PDC(Personal Digital Cellular)、GSM(登録商標)(Global System for Mobile Communications)、PHS(Personal Handy−phone System)等がある。無線通信規格として、さらに、例えば、WiMAX(Worldwide Interoperability for Microwave Access)、IEEE802.11、Bluetooth(登録商標)、IrDA(Infrared Data Association)、NFC(Near Field Communication)等がある。通信ユニット6は、上述した通信規格の1つ又は複数をサポートしていてもよい。
【0041】
レシーバ7及びスピーカ11は、音出力部である。レシーバ7及びスピーカ11は、コントローラ10から送信される音信号を音として出力する。レシーバ7は、例えば、通話時に相手の声を出力するために用いられる。スピーカ11は、例えば、着信音及び音楽を出力するために用いられる。レシーバ7及びスピーカ11の一方が、他方の機能を兼ねてもよい。マイク8は、音入力部である。マイク8は、利用者の音声等を音信号へ変換してコントローラ10へ送信する。
【0042】
ストレージ9は、プログラム及びデータを記憶する。ストレージ9は、コントローラ10の処理結果を一時的に記憶する作業領域としても利用される。ストレージ9は、半導体記憶媒体、及び磁気記憶媒体等の任意の非一過的(non−transitory)な記憶媒体を含んでよい。ストレージ9は、複数の種類の記憶媒体を含んでよい。ストレージ9は、メモリカード、光ディスク、又は光磁気ディスク等の可搬の記憶媒体と、記憶媒体の読み取り装置との組み合わせを含んでよい。ストレージ9は、RAM(Random Access Memory)等の一時的な記憶領域として利用される記憶デバイスを含んでよい。
【0043】
ストレージ9に記憶されるプログラムには、フォアグランド又はバックグランドで実行されるアプリケーションと、アプリケーションの動作を支援する制御プログラムとが含まれる。アプリケーションは、例えば、ディスプレイ2Aに画面を表示させ、タッチスクリーン2Bによって検出されるジェスチャに応じた処理をコントローラ10に実行させる。制御プログラムは、例えば、OSである。アプリケーション及び制御プログラムは、通信ユニット6による無線通信又は非一過的な記憶媒体を介してストレージ9にインストールされてもよい。
【0044】
ストレージ9は、例えば、制御プログラム9A、メールアプリケーション9B、ブラウザアプリケーション9C、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9E、カレンダーアプリケーション9F、計算機アプリケーション9G、テーブル9T、及び設定データ9Zを記憶する。メールアプリケーション9Bは、電子メールの作成、送信、受信、及び表示等のための電子メール機能を提供する。ブラウザアプリケーション9Cは、WEBページを表示するためのWEBブラウジング機能を提供する。ナビゲートアプリケーション9Dは、道案内等のためのナビゲーション機能を提供する。音楽プレイヤーアプリケーション9Eは、音楽を再生し、レシーバ7またはスピーカ11から出力するためのプレイヤー機能を提供する。カレンダーアプリケーション9Fは、スケジュール管理等のためのカレンダー機能を提供する。計算機アプリケーション9Gは、例えば四則演算を行うための計算機機能を提供する。設定データ9Zは、スマートフォン1の動作に関する各種の設定に関する情報を含む。
【0045】
制御プログラム9Aは、スマートフォン1を稼働させるための各種制御に関する機能を提供する。制御プログラム9Aは、例えば、通信ユニット6、レシーバ7、及びマイク8等を制御することによって、通話を実現させる。制御プログラム9Aが提供する機能には、タッチスクリーン2Bを介して検出されたジェスチャに応じて、ディスプレイ2Aに表示されている情報を変更する等の各種制御を行う機能が含まれる。制御プログラム9Aが提供する機能は、メールアプリケーション9B等の他のプログラムが提供する機能と組み合わせて利用されることがある。
【0046】
テーブル9Tは、アプリケーションと、アプリケーションに関係する種々の項目とが対応付けられたデータである。テーブル9Tの内容については、後で詳細に説明する。
【0047】
コントローラ10は、演算処理装置である。演算処理装置は、例えば、CPU(Central Processing Unit)、SoC(System−on−a−chip)、MCU(Micro Control Unit)、及びFPGA(Field−Programmable Gate Array)を含むが、これらに限定されない。コントローラ10は、スマートフォン1の動作を統括的に制御して各種の機能を実現する。
【0048】
具体的には、コントローラ10は、ストレージ9に記憶されているデータを必要に応じて参照しつつ、ストレージ9に記憶されているプログラムに含まれる命令を実行する。そして、コントローラ10は、データ及び命令に応じて機能部を制御し、それによって各種機能を実現する。機能部は、例えば、ディスプレイ2A、通信ユニット6、マイク8、及びスピーカ11を含むが、これらに限定されない。コントローラ10は、検出部の検出結果に応じて、制御を変更することがある。検出部は、例えば、タッチスクリーン2B、ボタン3、照度センサ4、近接センサ5、レシーバ7、カメラ12、カメラ13、加速度センサ15、方位センサ16、及びジャイロスコープ17を含むが、これらに限定されない。
【0049】
コントローラ10は、例えば、制御プログラム9Aを実行することにより、タッチスクリーン2Bを介して検出されたジェスチャに応じて、ディスプレイ2Aに表示されている情報を変更する等の各種制御を実行する。
【0050】
カメラ12は、フロントフェイス1Aに面している物体を撮影するインカメラである。カメラ13は、バックフェイス1Bに面している物体を撮影するアウトカメラである。
【0051】
コネクタ14は、他の装置が接続される端子である。コネクタ14は、USB(Universal Serial Bus)、HDMI(登録商標)(High−Definition Multimedia Interface)、ライトピーク(サンダーボルト(登録商標))、イヤホンマイクコネクタのような汎用的な端子であってもよい。コネクタ14は、Dockコネクタのような専用の端子でもよい。コネクタ14に接続される装置は、例えば、外部ストレージ、スピーカ、及び通信装置を含むが、これらに限定されない。
【0052】
加速度センサ15は、スマートフォン1に働く加速度の方向及び大きさを検出する。方位センサ16は、地磁気の向きを検出する。ジャイロスコープ17は、スマートフォン1の角度及び角速度を検出する。加速度センサ15、方位センサ16及びジャイロスコープ17の検出結果は、スマートフォン1の位置及び姿勢の変化を検出するために、組み合わせて利用される。
【0053】
図5においてストレージ9が記憶するプログラム及びデータの一部又は全部は、通信ユニット6による無線通信で他の装置からダウンロードされてもよい。図5においてストレージ9が記憶するプログラム及びデータの一部又は全部は、ストレージ9に含まれる読み取り装置が読み取り可能な非一過的な記憶媒体に記憶されていてもよい。図5においてストレージ9が記憶するプログラム及びデータの一部又は全部は、コネクタ14に接続される読み取り装置が読み取り可能な非一過的な記憶媒体に記憶されていてもよい。非一過的な記憶媒体は、例えば、CD(登録商標)、DVD(登録商標)、Blu−ray(登録商標)等の光ディスク、光磁気ディスク、磁気記憶媒体、メモリカード、及びソリッドステート記憶媒体を含むが、これらに限定されない。
【0054】
図5に示したスマートフォン1の構成は例であり、本発明の要旨を損なわない範囲において適宜変更してよい。例えば、ボタン3の数と種類は図5の例に限定されない。スマートフォン1は、画面に関する操作のためのボタンとして、ボタン3A〜3Cに代えて、テンキー配列又はQWERTY配列等のボタンを備えていてもよい。スマートフォン1は、画面に関する操作のために、ボタンを1つだけ備えてもよいし、ボタンを備えなくてもよい。図5に示した例では、スマートフォン1が2つのカメラを備えるが、スマートフォン1は、1つのカメラのみを備えてもよいし、カメラを備えなくてもよい。図5に示した例では、スマートフォン1が位置及び姿勢を検出するために3種類のセンサを備えるが、スマートフォン1は、このうちいくつかのセンサを備えなくてもよい。あるいは、スマートフォン1は、位置及び姿勢の少なくとも1つを検出するための他の種類のセンサを備えてもよい。
【0055】
次に、図6を参照しながら、テーブル9Tについて説明する。図6は、テーブル9Tに記憶される内容の例を示す図である。図6に示されるように、テーブル9Tは、アプリケーションに関する項目として、アプリケーションごとに、そのアプリケーションがダウンロードされた日時、そのアプリケーションが最後に実行された日時、およびそのアプリケーションが直近の1ヶ月間に実行された回数等を記憶している。
【0056】
テーブル9Tは、例えばブラウザアプリケーション9Cがダウンロードされた日時が、201X年1月3日の8時であることを記憶している。さらに、テーブル9Tは、ブラウザアプリケーション9Cが最後に実行された日時が、201X年7月11日の16時であることを記憶している。さらに、テーブル9Tは、ブラウザアプリケーション9Cが直近の1ヶ月間に実行された回数が576回であることを記憶している。最後に実行された日時及び1ヶ月間に実行された回数は、アプリケーションが実行される度に更新される。
【0057】
テーブル9Tは、アプリケーションに関する項目として、アプリケーションごとに、そのアプリケーションが属するグループをさらに記憶している。例えば、メールアプリケーション9B及びブラウザアプリケーション9C等の通信に関連したアプリケーションは、「通信」グループに属している。音楽プレイヤーアプリケーション9E、写真アプリケーション、及びショートメッセージアプリケーション等のアプリケーションは、「娯楽」グループに属している。テーブル9Tは、アプリケーションに関する各項目の情報に加え、複数のアプリケーションをまとめたグループに関する各項目の情報を記憶していてもよい。グループに関する各項目の情報は、そのグループに属するアプリケーションのうちいずれかが実行されるのに伴って更新される当該アプリケーションの各項目の情報に基づいて更新される。
【0058】
テーブル9Tに記憶される項目は上で述べたものに限られない。テーブル9Tは、アプリケーションに関する項目として、上述した項目とは異なる項目を記憶していてもよい。テーブル9Tは、例えば、そのアプリケーションの直前1週間の実行回数、及びそのアプリケーションの作成者の名前等を記憶していてもよい。テーブル9Tは、例えば、そのアプリケーションを実行できる利用者(アカウント)を示す権限に関する情報を記憶していてもよい。
【0059】
ここまで、本実施形態に係るスマートフォン1の基本的な構成について説明を行った。以下に、実施形態に係るスマートフォン1が、利用者の装置に対する操作に応じて、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える制御の例を示す。
【0060】
図7は、実施形態に係るスマートフォンが行う制御の第1の例を示す図である。スマートフォン1は、ステップS11に示すように、図4と同様のホーム画面40をディスプレイ2A(タッチスクリーンディスプレイ2)に表示している。ステップS11では、利用者の指F1が、ホーム画面40に配置された“Navigate”アイコンをタップしている。
【0061】
スマートフォン1は、“Navigate”アイコンに対するタップを検出すると、ステップS12に示すように、ナビゲートアプリケーション9Dを実行し、ナビゲートアプリケーション9Dの画面45aをディスプレイ2Aに表示する。スマートフォン1は、ステップS12で、ナビゲートアプリケーション9Dをフォアグランドで実行している。ステップS12では、利用者の指F1が、ボタン3Bをクリックしている。
【0062】
スマートフォン1は、ボタン3Bがクリックされたことを検出すると、ステップS13に示すように、画面45aに代えてホーム画面40をディスプレイ2Aに表示する。スマートフォン1は、ステップS13以降では、ナビゲートアプリケーション9Dをバックグランドで実行する。ステップS13では、利用者の指F1が、ホーム画面40に配置された“Music”アイコンをタップしている。
【0063】
スマートフォン1は、“Music”アイコンに対するタップを検出すると、ステップS14に示すように、音楽プレイヤーアプリケーション9Eを実行し、音楽プレイヤーアプリケーション9Eの画面45bをディスプレイ2Aに表示する。スマートフォン1は、ステップS14で、音楽プレイヤーアプリケーション9Eをフォアグランドで実行し、ナビゲートアプリケーション9Dをバックグランドで実行している。ステップS14では、利用者の指F1が、ボタン3Bをクリックしている。
【0064】
スマートフォン1は、ボタン3Bがクリックされたことを検出すると、ステップS15に示すように、画面45bに代えてホーム画面40をディスプレイ2Aに表示する。スマートフォン1は、ステップS15以降では、ナビゲートアプリケーション9Dおよび音楽プレイヤーアプリケーション9Eをバックグランドで実行する。ステップS15では、利用者の指F1が、ホーム画面40に配置された“Calendar”アイコンをタップしている。
【0065】
スマートフォン1は、“Calendar”アイコンに対するタップを検出すると、ステップS16に示すように、カレンダーアプリケーション9Fを実行し、カレンダーアプリケーション9Fの画面45cをディスプレイ2Aに表示する。スマートフォン1は、ステップS16で、カレンダーアプリケーション9Fをフォアグランドで実行し、ナビゲートアプリケーション9Dおよび音楽プレイヤーアプリケーション9Eをバックグランドで実行している。ステップS16では、利用者の指F1が、ボタン3Bをクリックしている。
【0066】
スマートフォン1は、ボタン3Bがクリックされたことを検出すると、ステップS17に示すように、画面45cに代えてホーム画面40をディスプレイ2Aに表示する。スマートフォン1は、ステップS17以降では、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行する。ステップS17では、利用者の指F1が、ホーム画面40に配置された“Browser”アイコンをタップしている。
【0067】
スマートフォン1は、“Browser”アイコンに対するタップを検出すると、ステップS18に示すように、ブラウザアプリケーション9Cを実行し、ブラウザアプリケーション9Cの画面45dをディスプレイ2Aに表示する。スマートフォン1は、ステップS18で、ブラウザアプリケーション9Cをフォアグランドで実行し、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行している。
【0068】
以上に説明したように、スマートフォン1は、フォアグランドおよびバックグランドで異なるアプリケーションを実行することができる。スマートフォン1は、複数のアプリケーションをバックグランドで実行している場合、それらのアプリケーションのそれぞれが、フォアグランドからバックグランドに切り替えられた順序をストレージ9に記憶している。
【0069】
図8は、実施形態に係るスマートフォンが行う制御の第2の例を示す図である。スマートフォン1は、ステップS21に示すように、図7のステップS18と同様の画面45dをディスプレイ2A(タッチスクリーンディスプレイ2)に表示している。ステップS21では、利用者が、1本の指F1により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0070】
スマートフォン1は、タッチスクリーンディスプレイ2に対する1本指での上フリックを検出すると、ステップS22に示す処理を行う。本実施形態では、ブラウザアプリケーション9Cは、1本指での上フリックまたは下フリックに、画面45dのスクロールを割り当てている。そのため、スマートフォン1は、ステップS22として、画面45dを上方へスクロールさせて画面45eを表示する。
【0071】
ブラウザアプリケーション9Cは、1本指での上フリック(シングルタッチジェスチャ)だけでなく、所定のマルチタッチジェスチャにも動作を割り当てている。例えば、スマートフォン1は、ディスプレイ2Aに画面45dが表示されている状態で、タッチスクリーン2Bによりピンチアウトを検出すると、画面45dに表示された文字及び画像を拡大する。また、スマートフォン1は、ディスプレイ2Aに画面45dが表示されている状態で、タッチスクリーン2Bによりピンチインを検出すると、画面45dに表示された文字及び画像を縮小する。
【0072】
図9は、実施形態に係るスマートフォンが行う制御の第3の例を示す図である。スマートフォン1は、ステップS31で、図7のステップS18と同様に、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行しているものとする。
【0073】
スマートフォン1は、ステップS31に示すように、図7のステップS18と同様の画面45dをディスプレイ2Aに表示している。ステップS31では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0074】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS32に示すように、画面45cをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS32で、バックグランドで実行していたカレンダーアプリケーション9Fを、フォアグランドで実行する。そして、スマートフォン1は、ステップS32で、ステップS31においてフォアグランドで実行していたブラウザアプリケーション9Cをバックグランドで実行する。
【0075】
ここまで、図7から図9を参照しながら、実施形態に係るスマートフォンが行う制御の第1の例から第3の例について説明した。
【0076】
スマートフォン1は、ディスプレイ2Aにフォアグランドで実行しているブラウザアプリケーション9Cの画面45dが表示されている状態で、タッチスクリーン2Bにより1本指での上フリック(シングルタッチジェスチャ)を検出すると、ブラウザアプリケーション9Cに、1本指での上フリックに応じた画面45dのスクロールを行わせる。一方、スマートフォン1は、ディスプレイ2Aに画面45dが表示されている状態で、タッチスクリーン2Bにより2本指での上フリック(マルチタッチジェスチャ)を検出すると、バックグランドで実行しているカレンダーアプリケーション9Fを、フォアグランドで実行する。
【0077】
このように、スマートフォン1は、タッチスクリーンディスプレイ2に対するマルチタッチジェスチャが行われると、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える。これにより、スマートフォン1の利用者は、アプリケーションの切り替えのために、例えば、バックグランドで実行しているアプリケーションのリストをディスプレイ2Aに表示させ、リストに表示されるアプリケーションを選択するというような面倒な操作を行わなくて済む。このため、操作性が向上する。
【0078】
さらに、アプリケーションの切り替えの契機となるマルチタッチジェスチャは、フォアグランドで実行しているアプリケーションの動作に割り当てられるマルチタッチジェスチャとは異なる。これにより、利用者はフォアグランドで実行しているアプリケーションに対するジェスチャとアプリケーションの切り替えのためのジェスチャとを区別できる。このため、誤操作が行われる可能性が低い。
【0079】
図9では、スマートフォン1が、タッチスクリーンディスプレイ2に対する2本指での上フリックが行われると、フォアグランドからバックグランドに切り替わってから経過した時間が最も短いカレンダーアプリケーション9Fをフォアグランドで実行する例を示した。しかしながら、スマートフォン1は、2本指での上フリックが行われると、フォアグランドからバックグランドに切り替わってから経過した時間が最も長いナビゲートアプリケーション9Dをフォアグランドで実行してもよい。
【0080】
あるいは、スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での下フリックが行われると、フォアグランドからバックグランドに切り替わってから経過した時間が最も短いアプリケーションをフォアグランドで実行してもよい。スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での下フリックが行われると、フォアグランドからバックグランドに切り替わってから経過した時間が最も長いアプリケーションをフォアグランドで実行してもよい。すなわち、スマートフォン1は、マルチタッチジェスチャの方向と、フォアグランドからバックグランドに切り替わってから経過した時間の長短とを対応付けて、マルチタッチジェスチャの方向に応じてバックグランドからフォアグランドへ切り替えるアプリケーションを決定してもよい。
【0081】
図10は、実施形態に係るスマートフォンが行う制御の第4の例を示す図である。スマートフォン1は、ステップS41で、図7のステップS18と同様に、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行しているものとする。さらに、スマートフォン1は音楽プレイヤーアプリケーション9Eにより、再生中の音楽をレシーバ7またはスピーカ11から出力しているものとする。
【0082】
スマートフォン1は、ステップS41に示すように、図7のステップS18と同様の画面45dをディスプレイ2Aに表示している。ステップS41では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して左フリックを行っている。
【0083】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での左フリックを検出すると、ステップS42に示すように、音を出力している音楽プレイヤーアプリケーション9Eの画面45bをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS42で、バックグランドで実行している音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。そして、スマートフォン1は、ステップS42で、ステップS41においてフォアグランドで実行していたブラウザアプリケーション9Cをバックグランドで実行する。
【0084】
図10に示すように、スマートフォン1は、ディスプレイ2Aにフォアグランドで実行しているブラウザアプリケーション9Cの画面45dが表示されている状態で、タッチスクリーン2Bにより2本指での左フリックを検出すると、バックグランドで実行しているアプリケーションであって音を出力している音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。
【0085】
これにより、スマートフォン1の利用者は、音を出力しているアプリケーションをフォアグランドで実行して、音楽の停止または早送り等の操作を迅速に実行することができる。このため、操作性がさらに向上する。
【0086】
図11は、実施形態に係るスマートフォンが行う制御の第5の例を示す図である。スマートフォン1は、ステップS51で、図7のステップS18と同様に、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行しているものとする。
【0087】
スマートフォン1は、ステップS51に示すように、図7のステップS18と同様の画面45dをディスプレイ2Aに表示している。ステップS51では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0088】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS52に示すように、画面45cをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS52で、バックグランドで実行しているカレンダーアプリケーション9Fを、フォアグランドで実行する。
【0089】
続いて、ステップS52では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0090】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS53に示すように、画面45bをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS53で、バックグランドで実行している音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。
【0091】
続いて、ステップS53では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0092】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS54に示すように、画面45aをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS54で、バックグランドで実行しているナビゲートアプリケーション9Dを、フォアグランドで実行する。
【0093】
図11に示すように、スマートフォン1は、タッチスクリーン2Bにより2本指での上フリックを検出する度に、バックグランドで実行している複数のアプリケーションを、フォアグランドからバックグランドに切り替わってから経過した時間が短い順に一つずつフォアグランドで実行する。これにより、スマートフォン1の利用者は、直近にフォアグランドで実行していたアプリケーション以外のアプリケーションも迅速に実行できる。このため、操作性がさらに向上する。
【0094】
図11では、スマートフォン1が、タッチスクリーンディスプレイ2に対する2本指での上フリックが行われる度に、バックグランドで実行している複数のアプリケーションを、フォアグランドからバックグランドに切り替わってから経過した時間が短い順にフォアグランドで実行する例を示した。しかしながら、スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックが行われる度に、バックグランドで実行している複数のアプリケーションを、フォアグランドからバックグランドに切り替わってから経過した時間が長い順にフォアグランドで実行してもよい。
【0095】
あるいは、スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での下フリックが行われる度に、バックグランドで実行している複数のアプリケーションを、フォアグランドからバックグランドに切り替わってから経過した時間が短い順にフォアグランドで実行してもよい。すなわち、スマートフォン1は、マルチタッチジェスチャの方向と、フォアグランドからバックグランドに切り替わってから経過した時間の長短とを対応付けて、マルチタッチジェスチャの方向に応じてバックグランドからフォアグランドへ切り替えるアプリケーションを決定してもよい。
【0096】
スマートフォン1は、ステップS52からS54で、バックグランドで実行しているアプリケーションをフォアグランドで実行する際、元々フォアグランドで実行しているアプリケーションをバックグランドで実行してよい。
【0097】
図12は、実施形態に係るスマートフォンが行う制御の第6の例を示す図である。スマートフォン1は、ステップS61で、図7のステップS18と同様に、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行しているものとする。バックグランドで実行されるアプリケーションは、図7のステップS11からS18に示すように、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9E、カレンダーアプリケーション9Fの順にフォアグランドからバックグランドに切り替わったものとする。
【0098】
スマートフォン1は、ステップS61に示すように、図7のステップS18と同様の画面45dをディスプレイ2Aに表示している。ステップS61では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上方向へのスワイプを行っている。
【0099】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指でのスワイプを検出すると、初めに指が接触した初期位置および現在指が接触している現在位置をタッチスクリーン2Bによってそれぞれ検出し、初期位置と現在位置との間の距離を算出する。そして、算出した距離を、ストレージ9の設定データ9Zに記憶された閾値と比較する。設定データ9Zは、第1閾値、第2閾値および第3閾値を記憶している。第2閾値は第1閾値より大きく、第3閾値は第2閾値より大きい。
【0100】
スマートフォン1は、初期位置と現在位置との間の距離が第1閾値を超えると、ステップS62に示すように、バックグランドで実行しているカレンダーアプリケーション9Fを、フォアグランドで実行する。
【0101】
そして、スマートフォン1は、初期位置と現在位置との間の距離が第2閾値を超えると、ステップS63に示すように、バックグランドで実行している音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。
【0102】
さらに、スマートフォン1は、初期位置と現在位置との間の距離が第3閾値を超えると、ステップS64に示すように、バックグランドで実行しているナビゲートアプリケーション9Dを、フォアグランドで実行する。
【0103】
図12に示すように、スマートフォン1は、タッチスクリーン2Bにより2本指での上方向へのスワイプを検出すると、スワイプの距離に応じてバックグランドで実行している複数のアプリケーションのうち一つのアプリケーションをフォアグランドで実行する。スマートフォン1は、スワイプの距離が長いほど、フォアグランドからバックグランドに切り替わってから経過した時間が長いアプリケーションをフォアグランドで実行する。
【0104】
図12では、スマートフォン1が、タッチスクリーンディスプレイ2に対する2本指での上方向へのスワイプが行われると、スワイプの距離が長いほど、フォアグランドからバックグランドに切り替わってから経過した時間が長いアプリケーションをフォアグランドで実行する例を示した。しかしながら、スマートフォン1は、2本指での下方向へのスワイプが行われた場合に、図12に示す処理を実行してもよい。スマートフォン1は、2本指での上方向へのスワイプが行われると、スワイプの距離が長いほど、フォアグランドからバックグランドに切り替わってから経過した時間が短いアプリケーションをフォアグランドで実行してもよい。スマートフォン1は、2本指での下方向へのスワイプが行われると、スワイプの距離が長いほど、フォアグランドからバックグランドに切り替わってから経過した時間が短いアプリケーションをフォアグランドで実行してもよい。すなわち、スマートフォン1は、マルチタッチジェスチャが行われる距離と、フォアグランドからバックグランドに切り替わってから経過した時間の長短とを対応付けて、マルチタッチジェスチャが行われる距離に応じてバックグランドからフォアグランドへ切り替えるアプリケーションを決定してもよい。
【0105】
スマートフォン1は、バックグランドで実行しているアプリケーションの数に応じて、設定データ9Zに記憶された閾値を変化させてもよい。例えば、スマートフォン1は、バックグランドでn個(nは自然数)のアプリケーションを実行している場合、ホーム画面40の長手方向(スワイプが検出された方向)に沿った長さにn分のk(kは自然数、1≦k≦n)を乗じた長さを第k閾値に設定してよい。スマートフォン1は、2本指のスワイプの距離が第k閾値を超えると、フォアグランドからバックグランドへ切り替わってから経過した時間が短い方からk番目のアプリケーションをフォアグランドで実行してよい。これにより、スマートフォン1は、2本指でのスワイプが一度行われると、そのスワイプの距離に応じてバックグランドで実行しているアプリケーションを全てフォアグランドで実行できるため、操作性が向上する。
【0106】
スマートフォン1は、ステップS62からS64で、バックグランドで実行しているアプリケーションをフォアグランドで実行する際、元々フォアグランドで実行しているアプリケーションをバックグランドで実行してよい。
【0107】
次に、図13を参照して、スマートフォン1がフォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える処理手順について説明する。図13は、スマートフォン1のコントローラ10が行う制御を示すフローチャートである。コントローラ10は、図13に示す処理手順と並行して、他の処理手順を実行することがある。スマートフォン1は、図13に示す処理を開始する時点で、バックグランドで少なくとも1つのアプリケーションを実行しており、フォアグランドで実行しているアプリケーションの画面をディスプレイ2Aに表示しているものとする。
【0108】
まず、スマートフォン1のコントローラ10は、ステップS71として、タッチスクリーンディスプレイ2に対して何らかのジェスチャが行われたか否かを判定する。コントローラ10は、タッチスクリーンディスプレイ2に対してジェスチャが行われていない場合(ステップS71でNo)、ステップS71に進む。このように、コントローラ10は、ステップS71でタッチスクリーンディスプレイ2に対する何らかのジェスチャを検出するまで、ステップS71の処理を繰り返す。
【0109】
コントローラ10は、タッチスクリーンディスプレイ2に対して何らかのジェスチャが行われている場合(ステップS71でYes)、ステップS72に進む。コントローラ10は、ステップS72として、タッチスクリーンディスプレイ2に対して行われたジェスチャが第1ジェスチャであるか否かを判定する。第1ジェスチャは、例えば、シングルタッチジェスチャである。
【0110】
コントローラ10は、ステップS71でタッチスクリーンディスプレイ2に対して行われたジェスチャが第1ジェスチャである場合(ステップS72でYes)、ステップS83に進む。コントローラ10は、ステップS83として、フォアグランドで実行しているアプリケーションに第1ジェスチャに応じた動作を行わせる。そして、コントローラ10は、ステップS78に進む。
【0111】
コントローラ10は、ステップS78として、一連の処理が終了するか否かを判定する。コントローラ10は、一連の処理が続く場合には(ステップS78でNo)、ステップS71に進む。コントローラ10は、一連の処理が終了する場合には(ステップS78でYes)、本処理を終了する。
【0112】
コントローラ10は、ステップS71でタッチスクリーンディスプレイ2に対して行われたジェスチャが第1ジェスチャでない場合(ステップS72でNo)、ステップS73に進む。コントローラ10は、ステップS73として、タッチスクリーンディスプレイ2に対して行われたジェスチャが第2ジェスチャであるか否かを判定する。第2ジェスチャは、例えば、マルチタッチジェスチャである。
【0113】
コントローラ10は、タッチスクリーンディスプレイ2に対して行われたジェスチャが第2ジェスチャでない場合(ステップS73でNo)、ステップS82に進む。コントローラ10は、ステップS82として、ステップS71でタッチスクリーンディスプレイ2に対して行われたジェスチャに応じた動作を行う。コントローラ10は、ステップS82で何の動作もしなくてもよい。そして、コントローラ10は、ステップS78に進む。ステップS78以降の処理は、上述した処理と同じである。
【0114】
コントローラ10は、タッチスクリーンディスプレイ2に対して行われたジェスチャが第2ジェスチャである場合(ステップS73でYes)、ステップS74に進む。コントローラ10は、ステップS74として、第2ジェスチャがフォアグランドで実行しているアプリケーションにおいていずれかの機能に割り当てられているジェスチャであるか否かを判定する。
【0115】
コントローラ10は、第2ジェスチャがフォアグランドで実行しているアプリケーションにおいていずれかの機能に割り当てられているジェスチャである場合(ステップS74でYes)、ステップS81に進む。コントローラ10は、ステップS81として、フォアグランドで実行しているアプリケーションに第2ジェスチャに応じた動作を行わせる。そして、コントローラ10は、ステップS78に進む。ステップS78以降の処理は、上述した処理と同じである。
【0116】
コントローラ10は、第2ジェスチャがフォアグランドで実行しているアプリケーションにおいていずれかの機能に割り当てられているジェスチャでない場合(ステップS74でNo)、ステップS75に進む。コントローラ10は、ステップS75として、ステップS73で検出された第2ジェスチャが第1の方向への第2ジェスチャであるか否かを判定する。第1の方向は、例えば、図10に示すような、ディスプレイ2Aに表示されているアプリケーションの画面の左へ向かう方向である。
【0117】
コントローラ10は、ステップS73で検出された第2ジェスチャが第1の方向への第2ジェスチャである場合(ステップS75でYes)、ステップS80に進む。コントローラ10は、ステップS80として、バックグランドで実行しているアプリケーションであって音を出力しているアプリケーションをフォアグランドで実行する。そして、コントローラ10は、ステップS78に進む。ステップS78以降の処理は、上述した処理と同じである。
【0118】
コントローラ10は、ステップS73で検出された第2ジェスチャが第1の方向への第2ジェスチャでない場合(ステップS75でNo)、ステップS76に進む。コントローラ10は、ステップS76として、ステップS73で検出された第2ジェスチャが第2の方向への第2ジェスチャであるか否かを判定する。第2の方向は、例えば、図9に示すような、ディスプレイ2Aに表示されているアプリケーションの画面の上へ向かう方向である。
【0119】
コントローラ10は、ステップS73で検出された第2ジェスチャが第2の方向への第2ジェスチャでない場合(ステップS76でNo)、ステップS79に進む。コントローラ10は、ステップS79として、タッチスクリーンディスプレイ2に対して行われた第2ジェスチャに応じた動作を行う。コントローラ10は、ステップS79で何の動作もしなくてもよい。そして、コントローラ10は、ステップS78に進む。ステップS78以降の処理は、上述した処理と同じである。
【0120】
コントローラ10は、ステップS73で検出された第2ジェスチャが第2の方向への第2ジェスチャである場合(ステップS76でYes)、ステップS77に進む。コントローラ10は、ステップS77として、バックグランドで実行しているアプリケーションをフォアグランドで実行する。コントローラ10は、ステップS77として、フォアグランドで実行しているアプリケーションをバックグランドで実行する。そして、コントローラ10は、ステップS78に進む。
【0121】
コントローラ10は、ステップS78として、一連の処理が終了するか否かを判定する。コントローラ10は、一連の処理が続く場合には(ステップS78でNo)、ステップS71に進む。コントローラ10は、一連の処理が終了する場合には(ステップS78でYes)、本処理を終了する。
【0122】
次に、実施形態に係るスマートフォン1が、利用者の装置に対する操作に応じて、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替える制御の変形例を示す。
【0123】
図14は、実施形態に係るスマートフォン1が行う制御の第1の変形例を示す図である。スマートフォン1は、ステップS91に示すように、画面45dをディスプレイ2Aに表示している。ステップS91では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0124】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS92に示すように、バックグランドで実行していたカレンダーアプリケーション9Fを、フォアグランドで実行する。そして、スマートフォン1は、ステップS92で、フォアグランドで実行していたブラウザアプリケーション9Cをバックグランドで実行する。ステップS92では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して左フリックを行っている。
【0125】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での左フリックを検出すると、ステップS93に示すように、バックグランドで実行していた音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。ステップS93では、利用者が、2本の指(指F1および指F2)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。スマートフォン1は、仮にステップS93で再びタッチスクリーンディスプレイ2に対する2本指での左フリックを検出した場合、バックグランドで実行していたナビゲートアプリケーション9Dをフォアグランドで実行する。
【0126】
スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での上フリックを検出すると、ステップS94に示すように、バックグランドで実行していたブラウザアプリケーション9Cを、フォアグランドで実行する。
【0127】
図14に示すように、スマートフォン1は、ディスプレイ2Aにフォアグランドで実行しているブラウザアプリケーション9Cの画面45dが表示されている状態で、タッチスクリーン2Bにより2本指での上フリックを検出すると、バックグランドで実行しているカレンダーアプリケーション9Fを、フォアグランドで実行する。
【0128】
そして、スマートフォン1は、タッチスクリーンディスプレイ2に対する2本指での左フリックを検出した後に2本指での上フリックを検出すると、最初にタッチスクリーンディスプレイ2に対する上フリックが行われたときにフォアグランドで実行していたブラウザアプリケーション9Cをフォアグランドで実行する。
【0129】
すなわち、スマートフォン1は、タッチスクリーンディスプレイ2に対する上フリックが行われたときにフォアグランドで実行していたアプリケーションを記憶し、少なくとも一度左フリックが行われた後に再び上フリックが行われた場合には、記憶されたアプリケーションをフォアグランドで実行する。これにより、利用者は、特定のアプリケーションをフォアグランドからバックグランドへ移行させた後、迅速に特定のアプリケーションをフォアグランドで実行できる。
【0130】
上記の第1の変形例では、左フリックが一回行われているが、左フリックは複数回行われてもよい。フォアグランドで実行しているアプリケーションを記憶するためのフリックは、上方向へのフリックでなくてもよい。例えば、スマートフォン1は、下フリックが行われたときフォアグランドで実行しているアプリケーションを記憶し、次に下フリックが行われると記憶したアプリケーションをフォアグランドで実行してもよい。バックグランドで実行しているアプリケーションとフォアグランドで実行しているアプリケーションとを切り替えるためのフリックは、左方向のフリックでなくてもよい。例えば、スマートフォン1は、右フリックが行われると、フォアグランドで実行しているアプリケーションとバックグランドで実行しているアプリケーションとを切り替えてもよい。
【0131】
図15は、実施形態に係るスマートフォン1が行う制御の第2の変形例を示す図である。スマートフォン1は、ステップS101で、図7のステップS18と同様に、ナビゲートアプリケーション9D、音楽プレイヤーアプリケーション9Eおよびカレンダーアプリケーション9Fをバックグランドで実行しているものとする。さらに、スマートフォン1は音楽プレイヤーアプリケーション9Eにより、再生中の音楽をレシーバ7またはスピーカ11から出力しているものとする。
【0132】
スマートフォン1は、ステップS101に示すように、画面45dをディスプレイ2Aに表示している。ステップS101では、利用者が、3本の指(指F1、指F2および指F3)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0133】
スマートフォン1は、タッチスクリーンディスプレイ2に対する3本指での上フリックを検出すると、ステップS102に示すように、画面45bをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS102で、バックグランドで実行しているアプリケーションであって音を出力している音楽プレイヤーアプリケーション9Eを、フォアグランドで実行する。そして、スマートフォン1は、ステップS102で、ステップS101においてフォアグランドで実行していたブラウザアプリケーション9Cをバックグランドで実行する。
【0134】
図10では、スマートフォン1が、2本の指による左フリックを契機として、バックグランドで実行しているアプリケーションであって音を出力しているアプリケーションをフォアグランドで実行する例を示した。図15に示すように、スマートフォン1は、3本の指によるジェスチャを契機として、バックグランドで実行しているアプリケーションであって音を出力しているアプリケーションをフォアグランドで実行してもよい。すなわち、スマートフォン1は、フリックの方向ではなく、マルチタッチジェスチャの指の本数に応じて、フォアグランドで実行するアプリケーションを変更してもよい。
【0135】
あるいは、スマートフォン1は、例えば、2本の指により円を描くようなスワイプが行われると、バックグランドで実行しているアプリケーションであって音を出力しているアプリケーションをフォアグランドで実行してもよい。
【0136】
図16は、実施形態に係るスマートフォン1が行う制御の第3の変形例を示す図である。スマートフォン1は、ステップS111に示すように、ブラウザアプリケーション9Cの画面45dをディスプレイ2Aに表示している。ステップS111では、利用者が、4本の指(指F1、指F2、指F3および指F4)により、タッチスクリーンディスプレイ2に対して上フリックを行っている。
【0137】
スマートフォン1は、タッチスクリーンディスプレイ2に対する4本指での上フリックを検出すると、ステップS112として、ディスプレイ2Aに、リスト46を画面45dに重ねて表示する。
【0138】
リスト46は、“Calculator”アイコン、“Calendar”アイコンおよび“Clock”アイコンの3つのアイコンを表示している。これらのアイコンは、スマートフォン1がバックグランドで実行しているアプリケーションのうち、テーブル9Tに記憶された「便利機能」グループに属するアプリケーションに対応するアイコンである。
【0139】
ステップS113では、利用者の指F1が、リスト46に表示された“Calculator”アイコンをタップしている。
【0140】
スマートフォン1は、“Calculator”アイコンに対するタップを検出すると、ステップS114に示すように、計算機アプリケーション9Gの画面45fをディスプレイ2Aに表示する。すなわち、スマートフォン1は、ステップS114で、バックグランドで実行していた計算機アプリケーション9Gを、フォアグランドで実行する。そして、スマートフォン1は、ステップS114で、ステップS111においてフォアグランドで実行していたブラウザアプリケーション9Cをバックグランドで実行する。
【0141】
図16に示すように、スマートフォン1は、4本の指によるジェスチャを契機として、バックグランドで実行しているアプリケーションであって所定のグループに属するアプリケーションのリストを表示してもよい。そして、スマートフォン1は、リストに含まれるアプリケーションが選択されると、選択されたアプリケーションをフォアグランドで実行してもよい。
【0142】
本出願の開示する実施形態は、発明の要旨及び範囲を逸脱しない範囲で変更することができる。さらに、本出願の開示する実施形態及びその変形例は、適宜組み合わせることができる。例えば、上記の実施形態は、以下のように変形してもよい。
【0143】
例えば、図5に示した各プログラムは、複数のモジュールに分割されていてもよいし、他のプログラムと結合されていてもよい。
【0144】
上記の実施形態では、タッチスクリーンを備える装置の例として、スマートフォンについて説明したが、添付の請求項に係る装置は、スマートフォンに限定されない。添付の請求項に係る装置は、スマートフォン以外の携帯電子機器であってもよい。携帯電子機器は、例えば、モバイルフォン、タブレット、携帯型パソコン、デジタルカメラ、メディアプレイヤ、電子書籍リーダ、ナビゲータ、及びゲーム機を含むが、これらに限定されない。添付の請求項に係る装置は、据え置き型の電子機器であってもよい。据え置き型の電子機器は、例えば、デスクトップパソコン、自動預入支払機(ATM)、及びテレビ受像器を含むが、これらに限定されない。
【0145】
上記の実施形態で、スマートフォン1は、アプリケーションをフォアグランドで実行しているときにボタン3Bがクリックされるとそのアプリケーションをバックグランドで実行するが、これには限定されない。例えば、スマートフォン1は、アプリケーションをフォアグランドで実行しているときにボタン3Aがクリックされるとそのアプリケーションをバックグランドで実行してよい。あるいは、スマートフォン1は、加速度センサ15の検出結果に応じてフォアグランドで実行しているアプリケーションをバックグランドで実行してもよい。
【0146】
上記の実施形態で、スマートフォン1は、タッチスクリーンディスプレイ2に対するマルチタッチジェスチャが行われると、そのときフォアグランドで実行しているアプリケーションをバックグランドで実行するが、これには限定されない。スマートフォン1は、タッチスクリーンディスプレイ2に対するマルチタッチジェスチャが行われると、そのときフォアグランドで実行しているアプリケーションを終了してもよい。
【0147】
上記の実施形態では、第1方向は画面の左へ向かう方向であり、第2方向は画面の上へ向かう方向であるが、これには限定されない。例えば、第1方向は、画面の右へ向かう方向または画面の右上へ向かう方向であってよい。例えば、第2方向は、画面の下に向かう方向または画面の左下へ向かう方向であってよい。第1方向及び第2方向は、少なくとも他方と異なる方向であればよい。
【0148】
上記の実施形態では、スマートフォン1は、シングルタッチジェスチャを第1ジェスチャとして検出し、マルチタッチジェスチャを第2ジェスチャとして検出するが、これには限定されない。例えば、スマートフォン1は、タッチジェスチャを第1ジェスチャとして検出し、ロングタッチジェスチャを第2ジェスチャとして検出してもよい。すなわち、スマートフォン1は、タッチスクリーン2Bにより検出される指の本数にかかわらず、タッチスクリーン2Bに対する操作時間が一定時間よりも短いジェスチャを第1ジェスチャとして検出し、タッチスクリーン2Bに対する操作時間が一定時間よりも長いジェスチャを第2ジェスチャとして検出してもよい。
【0149】
添付の請求項に係る技術を完全かつ明瞭に開示するために特徴的な実施形態に関し記載してきた。しかし、添付の請求項は、上記実施形態に限定されるべきものでなく、本明細書に示した基礎的事項の範囲内で当該技術分野の当業者が創作しうるすべての変形例及び代替可能な構成を具現化するように構成されるべきである。
【符号の説明】
【0150】
1 スマートフォン
2 タッチスクリーンディスプレイ
2A ディスプレイ
2B タッチスクリーン
3 ボタン
4 照度センサ
5 近接センサ
6 通信ユニット
7 レシーバ
8 マイク
9 ストレージ
9A 制御プログラム
9B メールアプリケーション
9C ブラウザアプリケーション
9D ナビゲートアプリケーション
9E 音楽プレイヤーアプリケーション
9F カレンダーアプリケーション
9G 計算機アプリケーション
9T テーブル
9Z 設定データ
10 コントローラ
11 スピーカ
12、13 カメラ
14 コネクタ
15 加速度センサ
16 方位センサ
17 ジャイロスコープ
20 ハウジング
40 ホーム画面
45 アプリケーション画面
50 アイコン

【特許請求の範囲】
【請求項1】
アプリケーションの画面を表示するタッチスクリーンディスプレイと、
第1アプリケーションがフォアグランドで実行され第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合には前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせ、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合には前記第2アプリケーションをフォアグランドで実行するコントローラと、
を備える装置。
【請求項2】
前記第1ジェスチャは、シングルタッチジェスチャであり、
前記第2ジェスチャは、マルチタッチジェスチャである
請求項1に記載の装置。
【請求項3】
前記コントローラは、前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して前記第2ジェスチャが行われた場合には、前記第2アプリケーションをフォアグランドで実行し、前記第1アプリケーションをバックグランドで実行する
請求項1または2に記載の装置。
【請求項4】
前記コントローラは、バックグランドで複数のアプリケーションを実行しているときは、前記第2ジェスチャが行われる度に、前記複数のアプリケーションの一つをフォアグランドで実行する
請求項1から3のいずれか一項に記載の装置。
【請求項5】
前記コントローラは、前記第2ジェスチャが行われる方向に応じた順序で、前記複数のアプリケーションの一つをフォアグランドで実行する
請求項4に記載の装置。
【請求項6】
第3アプリケーションによって再生される音を出力する音出力部をさらに備え、
前記コントローラは、音を再生している前記第3アプリケーションがバックグランドで実行されているときに第1方向への前記第2ジェスチャが行われた場合には、前記第3アプリケーションをフォアグランドで実行し、音を再生している前記第3アプリケーションがバックグランドで実行されているときに第2方向への前記第2ジェスチャが行われた場合には、前記複数のアプリケーションの一つをフォアグランドで実行する
請求項4に記載の装置。
【請求項7】
前記コントローラは、前記タッチスクリーンディスプレイに前記第1アプリケーションの画面が表示されているときに第1方向への前記第2ジェスチャが検出され、その後に第2方向への前記第2ジェスチャが少なくとも一度行われ、さらにその後に前記第1方向への前記第2ジェスチャが行われた場合には、前記第1アプリケーションをフォアグランドで実行する
請求項4に記載の装置。
【請求項8】
前記コントローラは、バックグランドで複数のアプリケーションを実行しているときに前記第2ジェスチャが行われた場合には、前記第2ジェスチャが行われる距離に応じて、前記複数のアプリケーションの一つをフォアグランドで実行する
請求項1から3のいずれか一項に記載の装置。
【請求項9】
前記コントローラは、前記第2ジェスチャが行われる距離が長いほど、フォアグランドで実行されてから経過した時間が長いアプリケーションがフォアグランドで実行されるように制御を実行する
請求項8に記載の装置。
【請求項10】
タッチスクリーンディスプレイを備える装置を制御する方法であって、
第1アプリケーションを実行するステップと、
第2アプリケーションを実行するステップと、
前記第1アプリケーションの画面を前記タッチスクリーンディスプレイに表示するステップと、
前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合に、前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせるステップと、
前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合に、前記第2アプリケーションをフォアグランドで実行するステップと、
を含む方法。
【請求項11】
タッチスクリーンディスプレイを備える装置に、
第1アプリケーションを実行するステップと、
第2アプリケーションを実行するステップと、
前記第1アプリケーションの画面を前記タッチスクリーンディスプレイに表示するステップと、
前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第1ジェスチャが行われた場合に、前記第1アプリケーションに当該第1ジェスチャに応じた動作を行わせるステップと、
前記第1アプリケーションがフォアグランドで実行され前記第2アプリケーションがバックグランドで実行されているときに前記タッチスクリーンディスプレイに対して第2ジェスチャが行われた場合に、前記第2アプリケーションをフォアグランドで実行するステップと、
を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2013−84237(P2013−84237A)
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2012−97169(P2012−97169)
【出願日】平成24年4月20日(2012.4.20)
【分割の表示】特願2012−14666(P2012−14666)の分割
【原出願日】平成24年1月26日(2012.1.26)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】