(57)【特許請求の範囲】
【請求項１】
起動要求に応じて起動することにより位置情報を取得する位置情報取得部と、
複数のアプリケーションに付属された複数の位置情報取得制御部と、
自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部と、
を有し、
前記処理部に選択された位置情報取得制御部がマスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、
前記処理部は、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、
装置。
【請求項２】
前記処理部は、前記自装置の動作モードが前記省電力モードへ変化したと判定した場合に、アプリケーションと、当該アプリケーションを前記省電力モードに移行させる優先順位のリストに基づいて、位置情報取得制御部を選択する、請求項１に記載の装置。
【請求項３】
前記マスタの権限を有する前記位置情報取得制御部が、前記起動要求を行う、請求項１又は請求項２に記載の装置。
【請求項４】
起動要求に応じて起動することにより位置情報を取得する位置情報取得部と、複数のアプリケーションに付属された複数の位置情報取得制御部と、自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部とを備える装置が実行する位置取得方法であって、
前記処理部に選択された位置情報取得制御部がマスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、
前記処理部が、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、位置取得方法。
【請求項５】
コンピュータを、
起動要求に応じて起動することにより位置情報を取得する位置情報取得部、
複数のアプリケーションに付属された複数の位置情報取得制御部、
自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部として機能させ、
前記処理部に選択された位置情報取得制御部は、マスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、
前記処理部は、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、位置取得制御用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置、位置取得方法、及び、位置取得制御用プログラムに関する。
【背景技術】
【０００２】
webサービスとしては、サービスの利用者に関する利用者情報を利用者端末から取得し、利用者情報を利用してサービスを提供するものがある。このサービスのうち、利用者端末が自装置の位置情報をWebサーバに送信し、Webサーバが位置情報に関連した情報を送信するものがある。
【０００３】
利用者端末が自装置の位置情報を得る技術としては、下記の特許文献１に記載された端末装置が知られている。この端末装置における１又はそれ以上のアプリケーションは、測位方法選択装置に測位データを要求する。測位方法選択装置は、１又はそれ以上の測位方法を使用する。このとき、測位方法選択装置は、ある測位方法によって提供される測位データの質と、アプリケーションが要求する測位の質とを比較して、１又はそれ以上のアプリケーションに測位データを提供する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２０９２９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、測位方法選択装置は、複数のアプリケーションから送信された測位要求を受け取るたびに測位データを生成しているので、測位データを得るたびに電力を消費してしまう。特に、ＧＰＳ電波を受信して測位演算を行う場合には、他の測位方法と比較して大きな電力を必要とする。
【０００６】
本発明は、このような事情を考慮してなされたもので、位置情報を取得するための電力の消費を抑制することができる装置、位置取得方法、及び、位置取得制御用プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
（１）上記の課題を解決するために、本発明の一態様に係る装置は、起動要求に応じて起動することにより位置情報を取得する位置情報取得部と、複数のアプリケーションに付属された複数の位置情報取得制御部と、自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部と、を有し、前記処理部に選択された位置情報取得制御部がマスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、前記処理部は、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、装置である。
【００１０】
（２）本発明の一態様は、上記した（１）に記載の装置において、前記処理部は、前記自装置の動作モードが前記省電力モードへ変化したと判定した場合に、アプリケーションと、当該アプリケーションを前記省電力モードに移行させる優先順位のリストに基づいて、位置情報取得制御部を選択する、構成が用いられてもよい。
【００１１】
（３）本発明の一態様は、上記した（１）又は（２）に記載の装置において、前記マスタの権限を有する前記位置情報取得制御部が、前記起動要求を行う、構成が用いられてもよい。
【００１２】
（４）上記の課題を解決するために、本発明の一態様に係る位置取得方法は、起動要求に応じて起動することにより位置情報を取得する位置情報取得部と、複数のアプリケーションに付属された複数の位置情報取得制御部と、自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部とを備える装置が実行する位置取得方法であって、前記処理部に選択された位置情報取得制御部がマスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、前記処理部が、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、位置取得方法である。
【００１３】
（５）上記の課題を解決するために、本発明の一態様に係る位置取得制御用プログラムは、コンピュータを、起動要求に応じて起動することにより位置情報を取得する位置情報取得部、複数のアプリケーションに付属された複数の位置情報取得制御部、自装置に設定された所定の条件に基づき前記位置情報取得部に起動要求を行う一つの位置情報取得制御部を選択する処理部として機能させ、前記処理部に選択された位置情報取得制御部は、マスタの権限を有する位置情報取得制御部として他の位置情報取得制御部に位置情報を出力し、前記処理部は、前記自装置の動作モードが省電力モードへ変化したことに応じて、前記省電力モードに対応したアプリケーションに付属された位置情報取得制御部を、マスタの権限を有する位置情報取得制御部として選択する、位置取得制御用プログラムである。
【発明の効果】
【００１４】
本発明によれば、位置情報を取得するための電力の消費を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態における位置提供システムの構成を示すブロック図である。
【図２】本発明の一実施形態に係る端末装置の構成を示すブロック図である。
【図３】本発明の一実施形態に係る端末装置の他の構成を示すブロック図である。
【図４】本発明の一実施形態に係る端末装置の他の構成を示すブロック図である。
【図５】本発明の一実施形態に係る端末装置において行われる処理手順の一例を示すフローチャートである。
【図６】本発明の一実施形態に係る端末装置において行われるマスタ決定処理の手順の一例を示すフローチャートである。
【図７】本発明の一実施形態に係る端末装置において行われる位置情報の取得及び送信処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、実施形態の位置提供システム１、端末装置、位置取得方法、及び、位置取得用プログラムを、図面を参照して説明する。
【００１７】
図１は、実施形態に係る位置提供システム１の構成を示すブロック図である。この位置提供システム１は、複数の端末装置１０Ａ、１０Ｂ、・・・、１０Ｎ（以下、総称する場合には単に「端末装置１０」と呼ぶ）、位置情報サーバ３０、認証サーバ４０、ＰＯＩ（Point Of Interest）サーバ４２、及びアプリケーションサーバ５０Ａ、５０Ｂ、・・・、５０Ｎ（以下、総称する場合には単に「アプリケーションサーバ５０」と呼ぶ）を有する。
【００１８】
位置提供システム１は、端末装置１０から位置情報サーバ３０に、端末装置１０の位置情報を送信し、この位置情報を位置情報サーバ３０からアプリケーションサーバ５０に提供するものである。端末装置１０は、任意の送信タイミング又は所定期間ごとに位置情報を送信する。本実施形態においては、予め端末装置１０内で決定された送信タイミングによって位置情報を送信する例について説明する。しかし、端末装置１０の位置情報の送信タイミングは、位置情報サーバ３０によって設定されてもよい。
【００１９】
位置情報サーバ３０は、端末装置１０から送信された位置情報を受信して蓄積する。この具体例においては、位置情報サーバ３０は、端末装置１０毎に時系列に位置情報を蓄積する。また、位置情報サーバ３０は、認証サーバ４０が端末装置１０のアプリケーション認証処理を行う場合には、端末装置１０において利用が許可されているアプリケーションの識別情報（ＩＤ）も蓄積してもよい。位置情報サーバ３０は、蓄積した位置情報をＰＯＩサーバ４２及びアプリケーションサーバ５０に送信する。
【００２０】
アプリケーションサーバ５０は、端末装置１０にインストールされた複数のアプリケーションプログラムのそれぞれに対応したサーバ装置である。ここで、端末装置１０には、アプリケーションプログラムＡ〜Ｎから選択される、複数のアプリケーションプログラムをインストールすることができる。本実施形態においては、端末装置１０にアプリケーションプログラムＡ〜Ｃがインストールされている場合を一例にして説明する。この具体例においては、アプリケーションサーバ５０Ａは、端末装置１０にインストールされた複数のアプリケーションプログラムのうち、アプリケーションプログラムＡに対応したサーバ装置である。また、アプリケーションサーバ５０Ｂは、端末装置１０にインストールされた複数のアプリケーションプログラムのうち、アプリケーションプログラムＢに対応したサーバ装置である。また、アプリケーションサーバ５０Ｃは、端末装置１０にインストールされた複数のアプリケーションプログラムのうち、アプリケーションプログラムＣに対応したサーバ装置である。このアプリケーションサーバ５０は、位置情報サーバ３０を介して端末装置１０の位置情報を受信する。
【００２１】
アプリケーションサーバ５０は、トラッキングされた端末装置１０の位置情報を用いて所定のアプリケーション処理を行う。トラッキングされた位置情報には、任意又は所定の期間ごとに繰り返して更新された端末装置１０の最新位置又は過去の位置が含まれる。このアプリケーション処理には、端末装置１０の位置の変化を解析して、端末装置１０に適した広告情報等のアプリケーション情報を判定する処理などが含まれていてもよい。アプリケーション情報は、アプリケーションサーバ５０から端末装置１０に送信されてもよい。これによりアプリケーションサーバ５０は、端末装置１０に、端末装置１０の位置に適した広告等を表示させることができる。この一例の場合、アプリケーション情報は、端末装置１０の位置情報取得部で取得された位置情報に基づく情報に相当する。
【００２２】
認証サーバ４０は、端末装置１０が位置情報サーバ３０と通信を開始する際に、各種の認証処理を行う。この認証サーバ４０が行う認証処理には、一例として、端末認証処理、ユーザ認証処理、又はアプリケーション認証処理が含まれている。これら認証処理の具体例について説明すると、端末認証処理において認証サーバ４０は、端末装置１０から送信された端末ＩＤと予め記憶しておいた端末ＩＤとが合致した場合に認証を成功させる。ここで、端末ＩＤとは、端末装置１０を識別するための固有の記号や番号などの情報である。ユーザ認証処理における認証サーバ４０は、端末装置１０から送信されたユーザＩＤと予め記憶しておいたユーザＩＤとが合致した場合に認証を成功させる。ここで、ユーザＩＤとは、端末装置１０を利用するユーザを識別するための固有の記号や番号などの情報である。アプリケーション認証処理における認証サーバ４０は、端末装置１０から送信されたアプリケーションＩＤと予め記憶しておいたアプリケーションＩＤとが合致した場合に認証を成功させる。ここで、アプリケーションＩＤとは、端末装置１０において利用可能なアプリケーションプログラムを識別するための固有の記号や番号などの情報である。
【００２３】
認証サーバ４０による認証が成功した場合、認証サーバ４０は、端末装置１０にトークンを生成して、端末装置１０に送信する。認証サーバ４０から送信されたトークンは、端末装置１０に記憶される。これにより端末装置１０は、位置情報サーバ３０及びアプリケーションサーバ５０とセキュアな通信が可能となる。なお、トークンは任意のタイミングで更新されてもよい。これにより、端末装置１０は、さらにセキュアな通信が可能となる。
【００２４】
また、認証サーバ４０は、端末装置１０が携帯電話である場合、端末認証処理においてＩＰ（Internet Protocol）アドレス及び電話番号を用いてもよい。認証サーバ４０は、位置情報サーバ３０を介して、端末装置１０から送信されたＩＰアドレス及び電話番号を受信する。認証サーバ４０は、受信したＩＰアドレス及び電話番号と、正当なＩＰアドレス及び電話番号とを照合する。認証サーバ４０は、受信したＩＰアドレス及び電話番号が正当なＩＰアドレス及び電話番号と照合できた場合には、通信を許可する認証結果を位置情報サーバ３０に送信する。
【００２５】
ＰＯＩサーバ４２は、ＰＯＩ情報を蓄積している。ＰＯＩ情報は、少なくとも店舗等の緯度、経度を示す情報を含んでいる。ＰＯＩサーバ４２は、端末装置１０、位置情報サーバ３０又はアプリケーションサーバ５０から出力される、端末装置１０の位置情報を含む要求を受け付けると、この要求の受け付けに応じて当該位置情報に対応したＰＯＩ情報を検索し、当該位置情報付近のＰＯＩ情報を返信する。なお、ＰＯＩ情報には、店舗等のロケーションＩＤ、ロケーション名、及びカテゴリ等を含んでいてもよい。これによりＰＯＩサーバ４２は、位置情報に対応したロケーションＩＤ、ロケーション名、及びカテゴリ等を検索結果として返信できる。
また、ＰＯＩサーバ４２は、ＰＯＩ情報をキーとして端末装置１０を検索してもよい。
これによりＰＯＩサーバ４２は、ＰＯＩ情報に該当する端末装置１０を抽出して、検索結果として返信することができる。例えば、ＰＯＩサーバ４２は、ある店舗内に存在する端末装置１０を検索して、端末装置１０のユーザＩＤを返信することができる。
【００２６】
図２は、実施形態に係る端末装置１０の構成を示すブロック図である。端末装置１０は、処理部１２、通信部１４、ＧＰＳ（Global Positioning System）測位部１６、及び記憶部１８を含む。端末装置１０は、ユーザに保有されて移動する機器である。端末装置１０は、例えば携帯電話又はスマートフォンであってもよい。
【００２７】
通信部１４は、位置情報サーバ３０との間で通信を行う。通信部１４は、例えば通信ＩＣチップにより構成されている。通信部１４は、処理部１２から供給された位置情報を所定の通信データに変換して位置情報サーバ３０に送信する。この位置情報には、測位時刻、緯度及び経度が含まれている。
認証サーバ４０がアプリケーション認証をする場合には、位置情報には、端末装置１０において許可されているアプリケーションのアプリケーションＩＤが含まれていてもよい。位置情報サーバ３０又はアプリケーションサーバ５０から通信データを受信した場合、通信部１４は、受信した通信データに所定の処理を施して処理部１２に出力する。
【００２８】
位置情報には、ユーザＩＤ、端末ＩＤ、端末機種名、及びＯＳ（Operating System）の種別等の端末装置１０に関する情報が含まれていてもよい。さらに、位置情報には、位置情報の測位方式、及び当該測位方式で測位された位置情報の測位誤差を含んでいてもよい。測位方式としては、例えばＧＰＳ測位方式、セルＩＤ方式、Ｗｉ−Ｆｉ方式、又はネットワーク測位方式が挙げられる。さらに、端末装置１０がＷｉ−Ｆｉネットワークに存在する場合には、位置情報には、Ｗｉ−ＦｉネットワークのアクセスポイントのＩＤが含まれていてもよい。さらに、端末装置１０がBluetooth機能を起動して通信している場合、位置情報には、Bluetooth端末としてのＩＤが含まれていてもよい。
さらに、位置情報には、位置情報が示す位置において端末装置１０が実行したプログラムに関するプログラム実行履歴情報が含まれていてもよい。プログラム実行履歴情報には、端末装置１０がプログラムを実行した時刻と実行したプログラムの名称や種類が含まれる。なお、プログラム実行履歴情報には、プログラムの起動された時刻と、スリープ状態からのプログラムが再起動された時刻とが含まれる。端末装置１０が実行するプログラムには、例えば、カメラプログラム、メールプログラム、電話プログラム、音楽再生プログラム（再生した楽曲名などを含んでもよい）、電卓プログラム等が含まれる。
さらに、位置情報には、位置情報が示す位置において端末装置１０がアクセスしたウェブページへのアクセス履歴や起動したウェブブラウザの操作履歴に関するウェブ履歴情報が含まれていてもよい。ウェブ履歴情報には、端末装置１０が企業の広告、又は、ホームページ等のＷｅｂページにアクセスした時刻とアクセスしたＷｅｂページのアドレスとが含まれる。
さらに、位置情報には、位置情報が示す位置において端末装置１０が受け付けたユーザからの操作に関する操作履歴情報が含まれていてもよい。操作履歴情報には、端末装置１０が操作を受け付けた時刻と受け付けた操作の名称や種類が含まれる。端末装置１０が受け付ける操作には、例えば、電源をＯＮする操作、電源をＯＦＦする操作、スピーカ音量の調節操作、省電力モードへの切替操作等が含まれる。
さらに、位置情報には、位置情報が示す位置における端末装置１０の姿勢の変化を示す姿勢変化情報が含まれていてもよい。姿勢変化情報には、端末装置１０の姿勢が変化した時刻が含まれる。なお、端末装置１０の姿勢の変化は、後述する加速度センサ等により検出される。
【００２９】
さらに、位置情報には、位置情報が示す位置において端末装置１０が取得した環境情報が含まれていてもよい。環境情報には、端末装置１０が収集した音情報や、近距離通信の通信履歴等が含まれる。端末装置１０が収集した音情報は、例えば店舗で流される可聴音や不可聴音に関する情報である。近距離通信の通信履歴は、例えばＢｌｕｅｔｏｏｔｈ（登録商標）及び赤外線等の通信を行った時刻等が含まれる。
【００３０】
ウェブ履歴情報、プログラム実行履歴情報、操作履歴情報、充電履歴情報、姿勢変化情報、及び環境情報は、処理部１２により生成される。
【００３１】
ＧＰＳ測位部１６は、位置情報を取得する位置情報取得部として機能する。ＧＰＳ測位部１６は、自装置の位置を特定して位置情報を生成し、処理部１２に出力する。このときＧＰＳ測位部１６は、複数のＧＰＳ衛星からＧＰＳ衛星の位置及び時刻を含むＧＰＳ信号を受信する。ＧＰＳ測位部１６は、複数のＧＰＳ衛星と端末装置１０の距離を演算し、三角測量演算により自装置の位置を特定する。特定された位置及び時刻は、位置情報としてＧＰＳ測位部１６から処理部１２に供給される。
【００３２】
ＧＰＳ測位部１６は、スリープ状態と、通常動作状態との少なくとも２つの状態によって動作する。このうち、スリープ状態とは、測位を実施せずに待機している状態であって、通常動作状態よりも消費電力が少ない状態である。また、通常動作状態とは、測位を実施する状態であって、スリープ状態よりも消費電力が多い状態である。ＧＰＳ測位部１６は、処理部１２による起動要求によって、状態を遷移させる。具体的には、ＧＰＳ測位部１６は、処理部１２による起動要求をトリガにして、スリープ状態から通常動作状態に状態を遷移させる。また、ＧＰＳ測位部１６は、測位演算が終了したことをトリガにして、通常動作状態からスリープ状態に状態を遷移させる。ここで、起動要求とは、処理部１２がＧＰＳ測位部１６に対して出力する要求であって、自装置の位置を特定して位置情報を生成する処理の実行の要求である。
【００３３】
換言すれば、ＧＰＳ測位部１６は、処理部１２から出力される起動要求の入力を待機している期間においてスリープ状態となっている。スリープ状態とは、省電力で動作している状態であり、起動要求により解除される。ＧＰＳ測位部１６は、処理部１２から起動要求を入力することに応じて起動する。これによりＧＰＳ測位部１６は、スリープ状態から通常動作状態に切り替わる。起動要求は、自装置の位置情報を取得する命令である。ＧＰＳ測位部１６は、起動要求に応じて位置情報を取得して処理部１２に出力すると、所定時間後にスリープ状態となる。
【００３４】
なお、位置情報を取得する位置情報取得部は、他の方式により位置情報を取得してもよい。
この位置情報取得部は、セルＩＤ（携帯電話基地局）方式によって位置情報を取得してもよい。このセルＩＤ方式は、端末装置１０が携帯電話端末の場合、携帯電話端末としての通信機能を応用して、３つ以上の携帯電話基地局の電波情報に基づいて端末装置１０の現在地を算出する。
位置情報取得部は、Ｗｉ−Ｆｉ方式によって位置情報を取得してもよい。Ｗｉ−Ｆｉ方式は、端末装置１０周辺の無線ＬＡＮのアクセスポイントから送信される電波を検出し、アクセスポイントの位置情報に基づいてアクセスポイントまたは所定のサーバ等から端末装置１０の位置情報を取得する。
さらに、位置情報取得部は、ネットワーク測位方式によって位置情報を取得してもよい。ネットワーク測位方式は、セルＩＤ方式とＷｉ−Ｆｉ方式による測位で位置情報を取得する。
このように、位置情報取得部は、ＧＰＳ測位方式のみならず、セルＩＤ方式又はＷｉ−Ｆｉ方式を用いる構成であっても、処理部１２からの起動要求に応じてスリープ状態から起動して、位置情報を取得できる。
本実施形態において、端末装置１０は、位置情報の取得方式として、Ｗｉ−Ｆｉ方式およびセルＩＤ方式よりも、ＧＰＳ測位部１６による測位方式を優先する。端末装置１０は、例えば自装置が屋内にいる等のＧＰＳ測位部１６に測位ができない状況において、ＧＰＳ測位部１６による測位に代えて、セルＩＤ方式またはＷｉ−Ｆｉ方式による測位に切り替える。
【００３５】
処理部１２は、例えば、ＣＰＵ（Central Processing Unit）等のプロセッサが、メモリに記憶されたプログラムを実行することにより機能するソフトウェア機能部である。また、これらの機能部のうち一部または全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）等のハードウェア機能部であってもよい。
【００３６】
処理部１２は、アプリケーション処理部１２０Ａ、１２０Ｂ、１２０Ｃ（以下、総称する場合には単に「アプリケーション処理部１２０」と呼ぶ。）を有する。アプリケーション処理部１２０Ａ、１２０Ｂ、１２０Ｃは、ＣＰＵがアプリケーションプログラムＡ、Ｂ、Ｃを実行することにより機能するソフトウェア機能部である。本実施形態において、複数のアプリケーション処理部１２０Ａ、１２０Ｂ、１２０Ｃは、それぞれ任意のアプリケーション処理を実行する。また、本実施形態では、アプリケーションプログラムＡ、Ｂ、Ｃの３つを実行するが２以上のアプリケーションプログラムを同時に実行するものであればよい。
【００３７】
端末装置１０は、アプリケーションプログラムＡ、Ｂ、Ｃの起動時にアプリケーション認証のための動作を行ってもよい。この場合、端末装置１０は、アプリケーションプログラムが起動する際に、アプリケーションプログラムごとに予め定められているアプリケーションＩＤを認証サーバ４０に送信する。より具体的には、端末装置１０は、アプリケーションプログラムＡが起動する際に、アプリケーションプログラムＡを示すアプリケーションＩＤを認証サーバ４０に送信する。端末装置１０は、認証サーバ４０からアプリケーション認証が許可されたか否かの認証結果を受信する。端末装置１０は、認証結果が「許可」の場合のみアプリケーションプログラムの起動を許可する。
【００３８】
処理部１２は、同時に複数のアプリケーションＡ、Ｂ、Ｃが実行可能である。処理部１２は、複数のアプリケーションＡ、Ｂ、Ｃのうち優先度の低いアプリケーションをバックグラウンドで実行する。なお、アプリケーションＡ、Ｂ、Ｃは、それぞれ独自の期間ごとまたは独自のタイミングごとに起動要求を出力することが設定されていてもよい。独自の所定期間または独自のタイミングは、アプリケーションＡ、Ｂ、Ｃごとに設定されていてもよい。
独自の所定期間は、例えばアプリケーションの種類等に基づき、１分、１０分、１時間などが挙げられる。また、独自の所定期間は、ユーザの操作を受け付け、ユーザにより指定された期間となるように変更させてもよい。さらに、独自の所定期間は、過去の測位履歴に基づいて自動的に変更させてもよい。例えば、次の所定期間を設定する際に、処理部１２は、前回の所定期間の開始前および経過時において測位された２つの位置情報から前回の所定期間内の移動距離を算出し、前回の所定期間において自装置の移動がある、または移動距離が長い場合には、次の所定期間を短く変更してもよい。
独自のタイミングは、自装置が通信する基地局に対応したセルＩＤ、自装置が通信可能なＷｉＦｉアクセスポイントのアクセスポイントＩＤが変化したタイミングが挙げられる。処理部１２は、セルＩＤまたはアクセスポイントＩＤが変化したことをトリガとして起動要求の出力タイミングの到来を判断できる。さらに、独自のタイミングは、後述する加速度センサ等の自装置の移動を検知し、自装置が所定距離移動したと推定されるタイミングであってもよい。この所定距離は、後述するように、自装置が所定エリアに進入したことに応じて再設定または変更されてもよい。また、所定距離は、ユーザの操作を受け付け、ユーザにより指定された距離となるように変更させてもよい。
【００３９】
図２の構成において、アプリケーションプログラムＡ、Ｂ、Ｃには、それぞれに位置情報ライブラリが付属している。すなわち、アプリケーションプログラムＡには、位置情報ライブラリＡが付属している。また、アプリケーションプログラムＢには、位置情報ライブラリＢが付属しており、アプリケーションプログラムＣには、位置情報ライブラリＣが付属している。以下の説明において、これら位置情報ライブラリＡ、Ｂ、Ｃを総称して、位置情報ライブラリという。
この位置情報ライブラリは、ＧＰＳ測位部１６に対して、起動要求を出力する。また、位置情報ライブラリは、この起動要求に応じてＧＰＳ測位部１６が生成した位置情報を取得し、取得した位置情報をアプリケーションプログラムに出力する。これにより、アプリケーションプログラムは、ＧＰＳ測位部１６が生成した位置情報の利用が可能になる。
また、この位置情報ライブラリとは、端末装置１０のＣＰＵによって実行されるソフトウェアである。すなわち、端末装置１０において、ＣＰＵが位置情報ライブラリを実行する。これにより、端末装置１０は、ソフトウェア機能部として位置情報取得制御部１２２Ａ、１２２Ｂ、１２２Ｃ（以下、総称する場合には単に「位置情報取得制御部１２２」と呼ぶ。）を構成する。すなわち、処理部１２は、これら位置情報取得制御部１２２をアプリケーションごとに有している。
位置情報取得制御部１２２を実現するための位置情報ライブラリは、それぞれ、独自の測位タイミングおよび位置情報の送信タイミングが設定される。複数のアプリケーションに付属されるそれぞれの位置情報ライブラリは、付属されるアプリケーションの種類および使用頻度、ダウンロードされた日時、またはソフトウェアバージョン等が異なる。したがって、それぞれの位置情報ライブラリの測位タイミングおよび送信タイミングは、それぞれ好ましいタイミングが設定される。
後述するように、自装置が通常モードと省電力モードの切替によって変更され、変更された動作モードに応じてマスタとしての位置情報ライブラリが変更されることに伴い、自装置の測位タイミングおよび送信タイミングを変更させる。
【００４０】
ここで、アプリケーションプログラムＡ、Ｂ、Ｃには、それぞれに位置情報ライブラリが付属しているが、必ずしも、これらすべての位置情報ライブラリがＧＰＳ測位部１６に対して起動要求を出力しなくてもよい。つまり、処理部１２には、複数の位置情報取得制御部１２２のうち、位置情報を取得させて位置情報をアプリケーション処理部１２０に利用可能にする一つの位置情報取得制御部１２２が存在していればよい。「一つの位置情報取得制御部１２２」は、後述するマスタとされた位置情報ライブラリにより実現される。
「一つの位置情報取得制御部１２２」は、図３を参照して後述するように、複数のアプリケーションに対応した１つの位置情報ライブラリとして付属していてもよい。
【００４１】
アプリケーション処理部１２０は、一つの位置情報取得制御部１２２によってＧＰＳ測位部１６に取得させる位置情報を利用する。
「位置情報を利用する」とは、端末装置１０内で位置情報を使用することを含む。アプリケーション処理部１２０は、例えば、位置情報を使用することにより、ＧＰＳ測位部１６により取得された位置情報に基づいて自装置の位置を地図上に表示させることができる。
「位置情報を利用する」とは、ＧＰＳ測位部１６により取得した位置情報に基づく情報を使用することを含む。位置情報に基づく情報は、位置情報を用いることによって得られた新たな情報である。位置情報に基づく情報は、端末装置１０内で位置情報に基づいて処理をしたことによって得られた情報であってもよく、アプリケーションサーバ５０内で位置情報に基づいて処理したことによって得られた情報であってもよい。例えば、アプリケーション処理部１２０は、自装置の位置に近い店舗の広告情報を抽出して、広告情報をプッシュ広告として表示してもよい。アプリケーション処理部１２０は、アプリケーションサーバ５０によって位置情報に基づいて抽出された広告情報を受信して、広告情報をプッシュ広告として表示してもよい。
【００４２】
アプリケーション処理部１２０は、一つの位置情報取得制御部１２２によって取得させる位置情報を利用可能にする。「位置情報を利用可能にする」とは、端末装置１０以外の装置に位置情報を取得させ、端末装置１０以外の装置に位置情報を処理可能にすることを含む。
このために、アプリケーション処理部１２０は、ＧＰＳ測位部１６により取得された位置情報の利用を許可する。このときアプリケーション処理部１２０は、位置情報を送信することを許可するかをユーザに問い合わせる。ユーザが位置情報の送信を許可した場合、アプリケーション処理部１２０は、位置情報の利用を許可する許可情報を生成する。アプリケーション処理部１２０は、生成した許可情報を位置情報サーバ３０に送信する。位置情報サーバ３０は、端末装置１０から送信された許可情報を受信した後、以降において端末装置１０から送信された位置情報を蓄積して、アプリケーションサーバ５０等に送信できる。これによりアプリケーション処理部１２０は、アプリケーションサーバ５０によって位置情報を利用して、端末装置１０の位置の解析等を行わせることができる。
【００４３】
さらに、アプリケーション処理部１２０は、予め端末装置１０にインストールされたものである。アプリケーション処理部１２０は、位置情報ライブラリが端末装置１０に供給されることに伴って、端末装置１０にインストールされたものであってもよい。具体的には、位置情報ライブラリが付属したアプリケーションプログラムを同時にダウンロードして端末装置１０にインストールする。これにより端末装置１０は、アプリケーション処理部１２０及び位置情報取得制御部１２２を備えることができる。
【００４４】
位置情報ライブラリは、ユーザの許可に応じてダウンロードされる。アプリケーションプログラムを起動している時に、アプリケーション処理部１２０は、自装置の位置情報の送信を許可するかを問い合わせる画面を表示させる。ユーザの操作に基づいて位置情報の送信が許可された場合、アプリケーション処理部１２０は、位置情報ライブラリのダウンロード要求を送信させる。
位置情報サーバ３０は、ダウンロード要求を受信したことに応じて位置情報ライブラリを端末装置１０に送信する。これにより端末装置１０は、位置情報ライブラリのダウンロードを開始する。処理部１２は、ダウンロードが完了すると、位置情報ライブラリを各アプリケーションプログラムに付属させる。
【００４５】
処理部１２は、ダウンロードした位置情報ライブラリを他のアプリケーションに付属させてもよい。処理部１２は、ダウンロードした位置情報ライブラリを複製し、位置情報ライブラリが付属していないアプリケーションに組み込む。これにより処理部１２は、位置情報ライブラリが付属していないアプリケーションに位置情報ライブラリを付属させることができる。
処理部１２は、既にアプリケーションに組み入れられている古いバージョンの位置情報ライブラリに代えて最新バージョンの位置情報ライブラリに更新してもよい。これにより処理部１２は、アプリケーションの位置情報ライブラリを最新なものに更新することができる。
【００４６】
位置情報取得制御部１２２は、ＧＰＳ測位部１６に起動要求を行う。複数のアプリケーション処理部１２０Ａ、１２０Ｂ、１２０Ｃに付属した複数の位置情報取得制御部１２２Ａ、１２２Ｂ、１２２Ｃのうちの一つの位置情報取得制御部１２２が、ＧＰＳ測位部１６に起動要求を行う。複数の位置情報取得制御部１２２のうち起動要求を行う一つの位置情報取得制御部１２２は、予め特定されている。すなわち、複数のアプリケーションプログラムＡ、Ｂ、Ｃのうちどのアプリケーションプログラムの位置情報取得制御部１２２からＧＰＳ測位部１６に起動要求を出力するかは特定されている。
【００４７】
複数の位置情報取得制御部１２２のうち、起動要求を出力した位置情報取得制御部１２２には、ＧＰＳ測位部１６から位置情報が供給される。この位置情報取得制御部１２２は、ＧＰＳ測位部１６から位置情報が供給されたことを、他の位置情報取得制御部１２２に通知する。この、他の位置情報取得制御部１２２は、位置情報が供給されたことを示す通知に応じて、起動要求を出力した位置情報取得制御部１２２に対して位置情報を要求する。起動要求を出力した位置情報取得制御部１２２は、他の位置情報取得制御部１２２からの要求に応じて、他の位置情報取得制御部１２２に対して位置情報を出力する。
なお、処理部１２は、ユーザの操作を受け付け、受け付けられたユーザの操作に基づいて、位置情報の提供を許可するアプリケーションに付属した位置情報取得制御部１２２、または位置情報の提供が禁止されたアプリケーションに付属した位置情報取得制御部１２２を設定してもよい。起動要求を出力した位置情報取得制御部１２２は、他の位置情報取得制御部１２２から要求を受け付けた場合、予め位置情報の提供が許可されているアプリケーションに付属した他の位置情報取得制御部１２２に限り、位置情報を出力する。また、起動要求を出力した位置情報取得制御部１２２は、位置情報の提供が禁止されたアプリケーションに付属した他の位置情報取得制御部１２２がある場合、ＧＰＳ測位部１６から新たな位置情報が供給されても、位置情報の提供が禁止されたアプリケーションに付属した他の位置情報取得制御部１２２には、通知をしない。
ここで、起動要求を出力した位置情報取得制御部１２２とは、予め特定されたアプリケーションに付属した位置情報取得制御部１２２である。また、他の位置情報取得制御部１２２とは、予め特定されたアプリケーション以外のアプリケーションに付属した位置情報取得制御部１２２である。つまり、予め特定されたアプリケーションに付属した位置情報取得制御部１２２は、他のアプリケーションに付属した位置情報取得制御部１２２に位置情報を出力する。これにより、他のアプリケーションに付属した位置情報取得制御部１２２は、ＧＰＳ測位部１６に起動要求を行うことなく、ＧＰＳ測位部１６が生成した位置情報を取得することができる。
【００４８】
ここで、予め特定されたアプリケーションに付属した位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２とも称する。また、予め特定されたアプリケーション以外のアプリケーションに付属した位置情報取得制御部１２２を、マスタの権限を有しない位置情報取得制御部１２２、または、スレーブの位置情報取得制御部１２２とも称する。
換言すれば、起動要求を出力する一つの位置情報取得制御部１２２は、他の位置情報取得制御部１２２に対してマスタの権限を有する。他の位置情報取得制御部１２２は、マスタの位置情報取得制御部１２２に対してスレーブとして機能する。他の位置情報取得制御部１２２は、ＧＰＳ測位部１６に対して起動要求を送信しない。他の位置情報取得制御部１２２は、マスタの位置情報取得制御部１２２から通知を受けた場合に、マスタの位置情報取得制御部１２２に位置情報を要求して、位置情報を取得する。
【００４９】
記憶部１８は、各種の情報を記憶する記録媒体である。記憶部１８は、位置情報取得制御部１２２により取得させた位置情報を蓄積する。記憶部１８は、位置情報を時系列で記憶する。記憶部１８は、アプリケーション認証を行う場合、位置情報に対応づけて、起動が許可されたアプリケーションプログラムのアプリケーションＩＤを記憶してもよい。
【００５０】
また、記憶部１８には、位置情報取得制御部１２２が動作するための位置取得制御用プログラムとしての位置情報ライブラリが記憶される。位置取得制御用プログラムは、コンピュータにより読込可能なプログラムである。
【００５１】
位置情報取得制御部１２２は、位置情報サーバ３０に位置情報を送信する場合に、記憶部１８に蓄積した位置情報を読み出して、通信部１４に出力する。これにより位置情報取得制御部１２２は、記憶部１８から読み出した位置情報を、通信部１４から位置情報サーバ３０に送信させる。
なお、位置情報取得制御部１２２は、位置情報サーバ３０を介さずに、アプリケーションサーバ５０に直接的に位置情報を送信してもよい。
【００５２】
位置情報取得制御部１２２は、所定条件となった場合に、端末装置１０から位置情報サーバ３０に位置情報を送信させる。所定条件は、予め端末装置１０内で決定された送信タイミングである。
所定条件は、位置情報サーバ３０から送信された所定期間であってもよい。これにより端末装置１０は、位置情報サーバ３０が要求する頻度で位置情報サーバ３０に位置情報を送信できる。
所定条件は、アプリケーションによって設定されたタイミングであってもよい。これにより端末装置１０は、アプリケーションが要求する頻度で位置情報サーバ３０に位置情報を送信できる。
所定条件は、位置情報サーバ３０を介さずにアプリケーションサーバ５０に直接的に位置情報を送信する場合、アプリケーションサーバ５０から送信された所定期間であってもよい。これにより端末装置１０は、アプリケーションサーバ５０が要求する頻度で、アプリケーションサーバ５０に位置情報を送信できる。
【００５３】
位置情報取得制御部１２２は、位置情報サーバ３０に位置情報を送信する場合、位置情報とともに、ウェブ履歴情報、プログラム実行履歴情報、操作履歴情報、充電履歴情報、姿勢変化情報及び環境情報の全部又は一部を送信させてもよい。
【００５４】
さらに、位置情報取得制御部１２２は、位置情報を記憶部１８から読み出して通信部１４により通信させる度に、位置情報の送信完了または送信不能を送信履歴として記憶させてもよい。位置情報取得制御部１２２は、例えば自装置周辺の電波の影響により位置情報の送信ができない場合には、位置情報の送信を中止し、当該位置情報に対応づけて送信不能であるという送信履歴を記憶部１８に記憶させる。位置情報取得制御部１２２は、送信タイミングにおいて送信履歴を参照し、前回の送信タイミング以降にＧＰＳ測位部１６により取得された位置情報、および送信不能の位置情報を記憶部１８から読み出し、通信部１４により通信させる。これにより、位置情報取得制御部１２２は、位置情報の送信ができない状況が生じても、位置情報を漏れなく送信できる。
【００５５】
図３に端末装置１０の他の構成例を示す。端末装置１０は、図２に示した構成に限らず、図３に示すように構成されていてもよい。図３の端末装置１０は、複数のアプリケーション処理部１２０Ａ、１２０Ｂ、１２０Ｃに対して１つの位置情報取得制御部１２２を有している。位置情報取得制御部１２２は、複数のアプリケーションに対応した１つの位置情報ライブラリとして実装される。
【００５６】
図４に端末装置１０のさらに他の構成例を示す。この端末装置１０において、位置情報取得部１６０は、上述したＧＰＳ測位部１６に加えて、加速度センサ１６１を含んでいる。加速度センサ１６１は、自装置である端末装置１０に加わる加速度の変化に応じて物理量が変化する。この加速度センサ１６１は、半導体静電容量センサであってもよい。
なお、端末装置１０は、自装置の挙動を検出するため、重力センサ、ジャイロセンサ、又は地磁気センサを含んでいてもよい。本実施形態においては、加速度センサ１６１のみを備えることを説明するが、これらの重力センサ、ジャイロセンサ、又は地磁気センサは、加速度センサ１６１と共に、又は、加速度センサ１６１に代えて備えていてもよい。
【００５７】
加速度センサ１６１により検出された加速度は、端末装置１０の挙動に相当する。位置情報取得部１６０は、加速度センサ１６１により検出された挙動に基づいて自装置の移動を検出する。位置情報取得部１６０は、自装置の移動を検出したことに応じて移動量を更新する。この移動量は、実際の端末装置１０の移動量とは異なり、端末装置１０の挙動から推定される移動量である。この移動量は位置情報取得部１６０から処理部１２に出力される。これにより、処理部１２は、移動量に応じて変化する自装置の位置情報を記憶部１８に蓄積することができる。
【００５８】
なお、位置情報取得部１６０は、加速度センサ１６１における物理量の変化に基づいて自装置が移動したことを検知してもよい。位置情報取得部１６０は、自装置が移動したことを検知したことに応じて、位置情報取得制御部１２２により測位タイミングを判定させることができる。例えば、位置情報取得制御部１２２は、自装置が移動状態である場合に、測位タイミングであることを判定することができる。また、位置情報取得制御部１２２は、単位時間当たりの移動距離又は所定位置からの移動距離が所定距離（例えば１００メートル）を超えている場合には、測位タイミングであることを判定することができる。
【００５９】
さらに位置情報取得制御部１２２は、通信部１４が通信可能な通信エリアの識別子に基づいて測位タイミングを判定してもよい。この通信エリアの識別子としては、基地局のセルＩＤ又はＷｉ−ＦｉネットワークにおけるアクセスポイントＩＤが挙げられる。位置情報取得制御部１２２は、通信部１４により検出された通信エリアの識別子が変更したことを判定したタイミングを、測位タイミングであると判定できる。
【００６０】
つぎに、端末装置１０の動作を説明する。図５は、図２に示すように構成された端末装置１０によって、マスタの権限を有する位置情報取得制御部１２２を決定するマスタ決定処理を行うかを判定するフローチャートである。図５はマスタ決定処理の処理手順を示すフローチャートである。
【００６１】
先ず図５のステップＳ１００において、端末装置１０は、処理部１２によって複数のアプリケーションプログラムを同時に起動しているか否かを判定する。複数のアプリケーションプログラムが起動している場合にはステップＳ１０２に処理を進める。１つのアプリケーションプログラムしか起動していない場合には、端末装置１０は、この判定を繰り返す。
【００６２】
ステップＳ１０２において、処理部１２は、図６のマスタ決定処理を行う。このマスタ決定処理は、各位置情報取得制御部１２２の処理部１２によって行うものとして説明する。なお、このマスタ決定処理は、あくまで一例であり、他の処理によってマスタとしての位置情報ライブラリを決定してよいのは勿論である。
【００６３】
先ず図６のステップＳ２００において、処理部１２は、自装置の現在の動作モードが省電力モードであるか否かを判定する。この省電力モードは、自装置の電力消費を抑制するために、ＧＰＳ測位部１６による測位間隔もしくは回数、または通信部１４による位置情報の送信の間隔もしくは回数を低下させる動作モードである。
このとき処理部１２は、自装置における電池残量を参照する。処理部１２は、電池残量が所定値以下である場合には省電力モードであることを判定する。省電力モードである場合にはステップＳ２０２に処理を進め、そうでない場合にはステップＳ２０４に処理を進める。なお、処理部１２は、ユーザの操作によって省電力モードに設定されていることを検知してもよい。
【００６４】
次のステップＳ２０２において、処理部１２は、省電力モードに対応したアプリケーションに付属された位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２に決定する。このとき、処理部１２は、予め記憶部１８に記憶されたアプリケーションの属性情報を参照して、省電力モードに対応したアプリケーションに付属された位置情報取得制御部１２２を選択する。省電力モードに対応したアプリケーションとは、測位間隔もしくは回数、または位置情報の送信間隔もしくは回数を低下させるアプリケーションである。
また、処理部１２は、例えば位置情報サーバ３０からアプリケーションと、当該アプリケーションを省電力モードに移行させる優先順位のリストのデータをダウンロードし、当該リストを参照してマスタの権限を有する位置情報取得制御部１２２を選択してもよい。
このとき、処理部１２は、現在起動しているアプリケーションを識別し、複数のアプリケーションが起動されているか否かを判定する。処理部１２は、複数のアプリケーションが起動している場合、記憶部１８に記憶されているリストを参照し、起動しているアプリケーションの優先順位を比較する。処理部１２は、比較した結果、優先順位が最も高いアプリケーションに付属された位置情報取得制御部１２２をマスタの権限を有する位置情報取得制御部１２２として選択する。これにより、省電力モード時に測位および位置情報の送信の頻度を抑制できる。
さらに、処理部１２は、省電力モード時に、アプリケーションに付属された位置情報取得制御部１２２ではなく、アプリケーションとは独立して動作される省電力モード専用の位置情報ライブラリをマスタの権限を有する位置情報取得制御部１２２として選択してもよい。これにより、アプリケーションが省電力モードに移行したことによって、起動中のアプリケーションによることなく、端末装置１０の電池消費を抑制できる。このアプリケーションから独立した位置情報ライブラリに対応した位置情報取得制御部１２２は、例えば、図３に示したように、複数のアプリケーションに対応した１つの位置情報ライブラリとして実装されるものであってもよい。
さらに、省電力モードに対応したアプリケーションに付属された位置情報取得制御部１２２を選択する際に、処理部１２は、バージョンが古いアプリケーションに付属された位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２に決定してもよい。また、処理部１２は、取得する情報が少ないアプリケーションに付属された位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２に決定してもよい。アプリケーションが取得させる情報には、位置情報が含まれる。この位置情報には、上述したようにウェブ履歴情報、プログラム実行履歴情報、操作履歴情報、充電履歴情報、姿勢変化情報、及び環境情報が含まれる。処理部１２は、位置情報に含まれる何れかの情報の量、または、位置情報に含まれる全ての情報の量を判定してマスタの権限を有する位置情報取得制御部１２２を選択してもよい。
また、このステップＳ２０２において、処理部１２は、マスタの権限を有する位置情報取得制御部１２２以外の位置情報取得制御部１２２を、スレーブの位置情報取得制御部１２２に決定する。
【００６５】
ステップＳ２０４において、処理部１２は、所定のマスタ決定条件に合致する位置情報取得制御部１２２を検出する。所定のマスタ決定条件は、位置情報ライブラリをマスタの権限を有する位置情報取得制御部１２２とするための条件が予め設定されている。この所定のマスタ決定条件は、複数のアプリケーションのうち、ＧＰＳ測位部１６に起動要求を行う頻度が高いアプリケーションに付属した位置情報取得制御部１２２、であってもよい。この場合、処理部１２は、アプリケーションプログラムの起動時間の履歴を含むデータを参照する。処理部１２は、起動回数が最も多いアプリケーションを検出する。これにより処理部１２は、起動回数が最も多いアプリケーションに付属した位置情報取得制御部１２２を、マスタ候補の位置情報取得制御部１２２として検出する。
所定のマスタ決定条件は、複数のアプリケーションのうち最先に起動したアプリケーションに付属した位置情報取得制御部１２２、であってもよい。この場合、処理部１２は、アプリケーションの起動時間の履歴を含むデータを参照する。処理部１２は、現在起動しているアプリケーションのうち起動時刻が最も古いアプリケーションを検出する。起動時刻が最も古いアプリケーションに付属した位置情報取得制御部１２２を、マスタ候補の位置情報取得制御部１２２として検出する。
所定のマスタ決定条件は、複数の位置情報ライブラリのうちバージョンが最新の位置情報ライブラリ、であってもよい。この場合、処理部１２は、複数のアプリケーションに付属している各位置情報ライブラリのバージョン情報を参照する。処理部１２は、位置情報ライブラリのバージョン情報のうち最新のバージョン情報の位置情報ライブラリを検出する。処理部１２は、最新のバージョン情報の位置情報ライブラリに対応した位置情報取得制御部１２２を、マスタ候補の位置情報取得制御部１２２として検出する。
【００６６】
なお、所定のマスタ決定条件には、他の条件も含まれていてもよい。
他のマスタ決定条件は、ユーザの操作に基づいて位置情報の測位または送信が許可されたアプリケーションに付属した位置情報ライブラリを選択することであってもよい。端末装置１０には、例えば、位置情報を利用するアプリケーション、または位置情報を利用可能にするアプリケーションがインストールされる。これらのアプリケーションをインストールする際、または、これらのアプリケーションが起動した際に、アプリケーションの制御により、処理部１２は、端末装置１０のディスプレイに位置情報の測位または送信を許可するメッセージを表示させる。ユーザの操作を受け付けることにより、位置情報の測位または送信が許可された場合、処理部１２は、位置情報の測位または送信が許可されたアプリケーションであることを記憶部１８に登録する。その後、処理部１２は、マスタの権限を有する位置情報ライブラリを選択する際に、記憶部１８に登録された情報を参照して、位置情報の測位または送信が許可されたアプリケーションがあるか否かを判定する。処理部１２は、位置情報の測位または送信が許可されたアプリケーションがある場合、当該アプリケーションに付属された位置情報ライブラリをマスタとしての位置情報ライブラリとして選択できる。
処理部１２は、インストール日時が最も古いアプリケーションであって、削除される可能性が低いアプリケーションに付属した位置情報取得制御部１２２を、マスタ候補の位置情報取得制御部１２２として検出してもよい。
また、処理部１２は、ＧＰＳ測位部１６に取得させる位置情報の種類または項目が最も多いアプリケーションに付属した位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２として選択してもよい。アプリケーションが取得させる位置情報には、上述したようにウェブ履歴情報、プログラム実行履歴情報、操作履歴情報、充電履歴情報、姿勢変化情報、及び環境情報が含まれる。処理部１２は、位置情報に含まれる何れかの情報の量、または、位置情報に含まれる全ての情報の量を判定してマスタ候補の位置情報取得制御部１２２としてしてもよい。
さらに処理部１２は、ＧＰＳ測位部１６に測位させる頻度（測位頻度）が最も多いアプリケーションに付属した位置情報取得制御部１２２を、マスタ候補の位置情報取得制御部１２２として検出してもよい。
【００６７】
ステップＳ２０６において、処理部１２は、ステップＳ２０４において検出された所定のマスタ決定条件に該当する位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２に決定する。処理部１２は、マスタの権限を有する位置情報取得制御部１２２以外の位置情報取得制御部１２２を、スレーブの権限を有する位置情報取得制御部１２２に決定する。なお、処理部１２は、マスタ候補の位置情報取得制御部１２２が複数検出された場合には、所定のマスタ決定条件に合致した数が多い位置情報取得制御部１２２を、マスタの権限を有する位置情報取得制御部１２２に決定してもよい。
【００６８】
なお、この実施形態において、位置情報サーバ３０がマスタの権限を有する位置情報取得制御部１２２を決定してもよい。位置情報サーバ３０は、端末装置１０から、起動しているアプリケーションの情報及びユーザが位置情報の利用を許可した許可情報を定めたリストを受信する。位置情報サーバ３０は、受信したリストを参照して、位置情報の利用が許可され、かつ起動しているアプリケーションのうち、どのアプリケーションに付属している位置情報ライブラリがマスタとなるかを決定できる。位置情報サーバ３０は、決定したマスタとなる位置情報ライブラリが付属しているアプリケーションを端末装置１０に通知する。これにより端末装置１０は、位置情報サーバ３０によって決定されたアプリケーションに付属した位置情報ライブラリをマスタに設定できる。
なお、位置情報サーバ３０は、定期的、決まった日時、あるいは前回送信したリストに変更が生じたタイミングに、端末装置１０から、起動しているアプリケーションの情報及びユーザが位置情報の利用を許可した許可情報を定めたリストを受信してもよい。これにより、位置情報サーバ３０は、起動しているアプリケーションやユーザが位置情報の利用を許可した許可情報に変化があった場合でも、端末装置１０に、次のマスタを遅滞なく通知することができる。
【００６９】
また、位置情報サーバ３０は、端末装置１０から受信した、起動しているアプリケーションの情報及びユーザが位置情報の利用を許可した許可情報を定めたリストに基づき、マスタとなる位置情報ライブラリが付属しているアプリケーションの順位を定めたリストを作成してもよい。これにより、端末装置１０は、マスタの位置情報ライブラリが付属されたアプリケーションが削除された場合に、次の順位のアプリケーションに付属された位置情報ライブラリをマスタに決定することができる。
【００７０】
なお、スレーブの権限を有する位置情報取得制御部１２２は、独自の測位タイミングが設定されており、当該独自のタイミングでマスタの権限を取得した位置情報取得制御部１２２に位置情報を要求してもよい。これにより、スレーブの権限を有する位置情報取得制御部１２２は、自己が付属されているアプリケーションに、当該アプリケーションにとって望ましいタイミングで位置情報を供給することができる。
【００７１】
以上のように、処理部１２は、複数の位置情報取得制御部１２２のうちいずれかの位置情報取得制御部１２２をマスタの権限を有する位置情報取得制御部１２２に決定できる。
【００７２】
図７は、端末装置１０において、マスタの位置情報取得制御部１２２によって位置情報を取得させ、取得された位置情報を位置情報サーバ３０に送信する処理手順を示すフローチャートである。
【００７３】
先ずステップＳ３００において、マスタの位置情報取得制御部１２２は、測位タイミングとなったか否かを判定する。測位タイミングは、自装置の位置情報を取得するタイミングである。測位タイミングは、予め自装置内に設定された時間間隔である。なお、測位タイミングは、位置情報サーバ３０により指定された時間間隔であってもよい。
【００７４】
次のステップＳ３０２において、マスタの位置情報取得制御部１２２は、ＧＰＳ測位部１６に起動要求を出力する。これによりＧＰＳ測位部１６は、ＧＰＳ信号を受信して三角測量演算を行って自装置の位置を特定する。ＧＰＳ測位部１６は、特定した位置を位置情報として取得する。マスタの権限を有する位置情報取得制御部１２２には、ＧＰＳ測位部１６により取得された位置情報が供給される。マスタの権限を有する位置情報取得制御部１２２は、供給された位置情報を測位時刻と共に記憶部１８に蓄積する。
【００７５】
次のステップＳ３０４において、マスタの権限を有する位置情報取得制御部１２２は、ステップＳ３０２にて位置情報を取得したことをスレーブの権限を有する位置情報取得制御部１２２に通知する。
【００７６】
次のステップＳ３０６は、マスタの権限を有する位置情報取得制御部１２２は、スレーブの権限を有する位置情報取得制御部１２２から要求を受信したか否かを判定する。要求を受信した場合（ステップＳ３０６：ＹＥＳ）、マスタの権限を有する位置情報取得制御部１２２は、要求を送信したスレーブの権限を有する位置情報取得制御部１２２に、ステップＳ３０２にて蓄積した位置情報を出力する（ステップＳ３０８）。マスタの権限を有する位置情報取得制御部１２２は、要求を出力した全てのスレーブの権限を有する位置情報取得制御部１２２に位置情報を出力する。なお、ステップＳ３０４の通知後、スレーブの権限を有する位置情報取得制御部１２２から要求がなくなって所定時間が経過した場合には、タイムアウトしてステップＳ３１０に処理を進めてもよい。
【００７７】
ステップＳ３１０において、マスタの権限を有する位置情報取得制御部１２２は、位置情報サーバ３０への位置情報の送信タイミングであるか否かを判定する。位置情報の送信タイミングは、前回の送信タイミングから所定時間を経過した時である。所定時間は、予め自装置内で決定された時間である。なお、所定時間は、位置情報サーバ３０により要求された時間間隔であってもよい。
位置情報の送信タイミングとなった場合（ステップＳ３１０：ＹＥＳ）、マスタの権限を有する位置情報取得制御部１２２は、位置情報サーバ３０に未送信の位置情報を記憶部１８から読み出して、位置情報サーバ３０に送信させる（ステップＳ３１２）。送信タイミングではない場合、マスタの権限を有する位置情報取得制御部１２２は、処理をステップＳ３００に戻す。
【００７８】
以上のように、端末装置１０は、起動要求に応じて起動することにより位置情報を取得する位置情報取得部（ＧＰＳ測位部１６）と、位置情報取得部へ起動要求を行う一つの位置情報取得制御部（１２２）と、一つの位置情報取得制御部に対応した複数のアプリケーション（アプリケーション処理部１２０）とを含む。
この端末装置１０によれば、複数のアプリケーションに対して一つの位置情報取得制御部１２２を有している。これにより端末装置１０は、アプリケーション処理部１２０のそれぞれから起動要求をＧＰＳ測位部１６に出力することを回避できる。したがって、端末装置１０によれば、ＧＰＳ測位部１６の測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
【００７９】
端末装置１０におけるＧＰＳ測位部１６は、衛星電波に基づく測位演算を行って位置を特定するモジュールである。端末装置１０によれば、加速度センサ等によって位置を特定する処理と比較してＧＰＳ測位部１６の電力消費量が高いので、ＧＰＳ測位部１６による測位回数を抑制して、位置情報を取得するための電力消費を抑制できる。
【００８０】
端末装置１０は、位置情報を取得して、取得した位置情報のアプリケーションによる利用を可能にする位置情報ライブラリが、複数のアプリケーションのそれぞれに対応付けられている。この端末装置１０において、位置情報ライブラリのうち、一の位置情報ライブラリが位置情報取得制御部として位置情報取得部へ起動要求を行う。
端末装置１０によれば、一の位置情報ライブラリが位置情報取得部へ起動要求を行うので、複数のアプリケーションのそれぞれに位置情報ライブラリを付属させても、それぞれの位置情報ライブラリから起動要求が出力されることを回避できる。したがって、端末装置１０によれば、ＧＰＳ測位部１６の測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
また、端末装置１０によれば、複数の位置情報ライブラリが実装されていて、それぞれのアプリケーションの提供元が異なる場合であっても、位置情報ライブラリ間で連携して、マスタを決定することができる。これにより、端末装置１０は、複数の位置情報ライブラリのうち、起動要求を出力する位置情報ライブラリを一つに設定することができる。さらに、端末装置１０は、マスタの権限を有する位置情報ライブラリが位置情報を取得した場合に、他の位置情報ライブラリに位置情報を出力して、複数の位置情報ライブラリにおいて位置情報を共有することができる。
【００８１】
端末装置１０は、複数のアプリケーションのうち、位置情報を取得するための消費電力が少ないアプリケーションに付属された位置情報ライブラリが位置情報取得部へ起動要求を行うことができる。これにより端末装置１０によれば、ＧＰＳ測位部１６の測位回数を抑制すると共に１回の測位に要する電力を抑制することができ、さらに消費電力を抑制できる。
【００８２】
端末装置１０は、複数のアプリケーションのうち、使用頻度が高いアプリケーションに付属した位置情報ライブラリが位置情報取得部へ起動要求を行うことができる。これにより端末装置１０によれば、バックグラウンドで動作している頻度が高いアプリケーションよりも、ユーザの使用頻度が高いアプリケーションに付属した位置情報ライブラリが優先して起動要求を出力することができる。これにより端末装置１０によれば、位置情報を取得するために省電力動作しているアプリケーションを起動する回数を抑制できる。これにより端末装置１０によれば、ＧＰＳ測位部１６の測位回数を抑制すると共に１回の測位に要する電力を抑制することができ、さらに消費電力を抑制できる。
【００８３】
端末装置１０は、複数のアプリケーションのうち最先に起動したアプリケーションに付属した位置情報ライブラリが位置情報取得部へ起動要求を行うことができる。これにより端末装置１０によれば、位置情報ライブラリが付属されたアプリケーションプログラムが起動した直後から、当該位置情報ライブラリからのみ起動要求を行うことができる。
【００８４】
端末装置１０は、複数の位置情報ライブラリのうちバージョンが最新の位置情報ライブラリが位置情報取得部へ起動要求を行うことができる。これにより端末装置１０は、信頼性が高い位置情報ライブラリからＧＰＳ測位部１６へ起動要求を行うことができる。
【００８５】
端末装置１０は、位置情報取得制御部が、複数のアプリケーションに対応した１つのプログラムとして実現することができる。これにより端末装置１０によれば、各アプリケーションに対して位置情報ライブラリとして付属させる構成を採用しなくても、ＧＰＳ測位部１６の測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
【００８６】
端末装置１０は、複数のアプリケーションの少なくとも一のアプリケーションが、位置情報に基づく情報を使用することができる。これにより端末装置１０によれば、アプリケーションが直接的に位置情報を使用するものでなくても、消費電力を抑制しながら位置情報を取得することができる。
【００８７】
端末装置１０は、複数のアプリケーションの少なくとも一のアプリケーションが、位置情報を取得することを許可することができる。この端末装置１０によれば、単に自装置の位置情報を送信することを許可した場合であっても、位置情報を取得するための電力消費を抑制できる。
【００８８】
端末装置１０は、位置情報を蓄積する位置情報サーバ３０に、位置情報を送信する通信部１４を有するものである。この端末装置１０によれば、位置情報サーバ３０のために位置情報を取得する場合であっても、自装置の測位のための電力消費を抑制できる。
【００８９】
位置提供システム１は、端末装置１０と、端末装置１０に記憶された複数のアプリケーションのうち少なくとも一つのアプリケーションに対応したアプリケーションサーバ５０と、端末装置１０から送信された位置情報を受信し、アプリケーションサーバ５０に位置情報を送信する位置情報サーバ３０と、を有する。この位置提供システム１によれば、位置情報を、位置情報サーバ３０を介してアプリケーションサーバ５０に提供する場合であっても、端末装置１０の測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
【００９０】
上述した実施形態によれば、複数のアプリケーションに対応した一つの位置情報取得制御部１２２により位置情報取得部（ＧＰＳ測位部１６）へ起動要求を行い、起動要求に応じて、位置情報取得部によって位置情報を取得する位置取得方法を実現できる。この位置取得方法によれば、端末装置１０の測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
【００９１】
上述した実施形態における位置取得制御用プログラムは、コンピュータを、起動要求に応じて位置情報を取得する位置情報取得部（１６）に対し、起動要求を行う一つの位置情報取得制御部（１２２）、一つの位置情報取得制御部に対応した複数のアプリケーション（１２０）、として機能させる。この位置取得制御用プログラムによれば、位置情報ライブラリとして各アプリケーションに付属されることにより、測位回数を抑制でき、測位のための電力消費を抑制できる。この位置取得制御用プログラムによれば、複数のアプリケーションに対応して、測位回数を抑制でき、位置情報を取得するための電力消費を抑制できる。
【００９２】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
本発明は、例えば、端末装置、位置取得方法、及び位置情報取得制御用プログラムなどとして実施することができる。
【００９３】
また、上述した端末装置１０の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disk）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００９４】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００９５】
１…位置提供システム、１０、１０Ａ、１０Ｂ、・・・、１０Ｎ…端末装置、１２…処理
部、１４…通信部、１６…ＧＰＳ測位部、１６０…位置情報取得部、１６１…加速度セン
サ、１８…記憶部、３０…位置情報サーバ、４０…認証サーバ、４２…ＰＯＩサーバ、５
０、５０Ａ、５０Ｂ、・・・、５０Ｎ…アプリケーションサーバ、１２０、１２０Ａ、１
２０Ｂ、１２０Ｃ…アプリケーション処理部、１２２、１２２Ａ、１２２Ｂ、１２２Ｃ…
位置情報取得制御部
【図１】
0006396534.tif 000002
【図２】
0006396534.tif 000003
【図３】
0006396534.tif 000004
【図４】
0006396534.tif 000005
【図５】
0006396534.tif 000006
【図６】
0006396534.tif 000007
【図７】
0006396534.tif 000008