JP4938284B2 - 位置認識型モバイルデバイス用ソフトウェアの開発 - Google Patents

位置認識型モバイルデバイス用ソフトウェアの開発 Download PDF

Info

Publication number
JP4938284B2
JP4938284B2 JP2005312951A JP2005312951A JP4938284B2 JP 4938284 B2 JP4938284 B2 JP 4938284B2 JP 2005312951 A JP2005312951 A JP 2005312951A JP 2005312951 A JP2005312951 A JP 2005312951A JP 4938284 B2 JP4938284 B2 JP 4938284B2
Authority
JP
Japan
Prior art keywords
map
location
event
aware
interest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005312951A
Other languages
English (en)
Other versions
JP2006153863A (ja
Inventor
マンテック フランク
ダブリュー.サルムレ イボ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006153863A publication Critical patent/JP2006153863A/ja
Application granted granted Critical
Publication of JP4938284B2 publication Critical patent/JP4938284B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Navigation (AREA)
  • Instructional Devices (AREA)
  • Traffic Control Systems (AREA)
  • Stored Programmes (AREA)

Description

本発明は位置情報を利用するアプリケーションプログラム、システムおよび方法に関する。
ここ数年、位置情報を利用したアプリケーションがますます多く開発されるようになってきた。これらのロケーションアプリケーションのうちには、マッププログラム、フライトトラッカープログラム、およびナビゲーションプログラムを含むものもある。
これらのアプリケーションの多くは、モバイルコンピューティングデバイス用に開発されている。例えば、都市の中をユーザがナビゲートする助けとなるよう、車載ナビゲーションシステムが開発されている。携帯電話のうちには、GPSベースのナビゲーションプログラムを含むものもある。しかし、これらのアプリケーションを開発することは非常に困難である。一般に、ポジショニングシステムは緯度や経度などの位置データだけを提供し、その情報を処理し解釈するためにはアプリケーションを必要とする。
本発明のいくつかの実施形態は、位置認識型ソフトウェアアプリケーションの開発および使用を容易にするためのシステムおよび方法に関する。位置情報の収集、分析、および表示という、現在は別個のそれぞれ複雑なタスクを組み合わせ、非熟練者が自らのアプリケーションにロケーションサービスやマッピングサービスを組み込めるようになるまで統合することで、機能に富む位置認識型ソフトウェアアプリケーションを開発する開発者の能力が高まる。
一態様によれば、位置認識型アプリケーションを作成するためのアプリケーションプログラミングインターフェースが使用される。この上位プログラミングモデルは、プログラマが位置情報を単に緯度や経度などの未加工の位置データとしてではなく、論理エンティティとして使用できるようにすることを対象としている。位置情報は、関心地域別に取り出される。開発者は、自らの地図レンダリングソフトウェアを作ることに関心を持つ必要はなく、第三者が開発したレンダリングエンジンを使用することができる。
本発明の別の態様によれば、位置認識型アプリケーションを作成するためにイベント駆動型のプログラミングモデルが使用される。イベントは、ある関心地域に対するアイテムの相対位置に応答して生成されてもよい。例えば、プログラマは、デバイスが第1の関心地域に入る場合に1つのルーチンが実行されるように指定し、デバイスが第2の関心地域を出る場合にもう1つのルーチンが実行されるようにする。
本発明のさらに別の態様によれば、様々な位置認識型アプリケーションが、位置データストアにアクセスすることができる。各ロケーションアプリケーションが自らのデータストアを利用するのではなく、アプリケーションが位置関連情報を共用することができる。
本発明のさらに別の態様によれば、様々な位置認識型アプリケーションが共用の地図にアクセスすることができる。各ロケーションアプリケーションが自らの地図ストアおよび地図レンダリング技術を利用するのではなく、アプリケーションは共用の地図データリポジトリおよび地図レンダリングエンジンを使って動作することができる。
一般に、本発明は、位置認識型ソフトウェアアプリケーションの開発および使用を容易にするためのシステムおよび方法を提供することを対象としている。位置情報の収集、分析、および表示という、現在は別個のそれぞれ複雑なタスクを組み合わせ、非熟練者が自らのアプリケーションにロケーションサービスを組み込めるようになるまで統合することで、優れた位置認識型ソフトウェアアプリケーションを開発するという開発者の能力が高まる。
例示的な位置認識型開発システム
図3は、本発明の諸態様による位置認識型システムを示す。位置システム300は、ロケーションマネージャ320、位置認識型アプリケーション330、およびマップマネージャ340を含む。ロケーションマネージャは、位置ソース325(1−N)と結合されている。マップマネージャは、1つ(または複数)の地図ストア342、1つ(または複数)の地図生成器344、および1つ(または複数)の地図ウェブサービス346に結合されている。
ロケーションマネージャ320は、オンデバイスまたはオフデバイスの位置ソース325(1−N)から位置情報を受け取り、位置認識型アプリケーション330に提供される位置イベント別に位置情報を取り出すように構成される。位置ソースは、あるアイテムについての位置情報を提供するものであれば何でもよい。例えば、位置ソースの1つはGPS受信機でよい。別の位置ソースとしては、アイテムの位置を示すユーザの入力でもよい。例えば、ユーザは、デバイスへのユーザ入力により、自分が特定の位置にいることを知らせることができる。ユーザは、キーパッド、タッチスクリーン、音声認識その他を使用して自らのデバイスに位置を入力してもよい。他の位置ソースとしては、シミュレートされた位置ソースでもよい。アプリケーション330をテストするために開発者が野外に出る必要はなく、シミュレートされた位置データを使用することができる。さらに別の位置ソースとしては、RFIDタグであってもよい。各位置ソースは、位置データの様々な解像度を提供することができる。例えば、一部の位置ソースは極めて正確であるのに対して、別の位置ソースは近所まで、または面する道路までなどといった範囲まで正確であるかも知れない。
位置ソースは、近傍のまたは遠隔の位置ソースに対応することができる。近傍のソースは、ネットワーク情報から自らの位置を取得するGPS受信機またはモバイルデバイス自体を含むが、それだけには限らない位置生成ハードウェアに対応する。遠隔の位置ソースは、リモートなネットワークソースからプッシュまたはプルされた位置情報(例えば、友人の車の位置情報と共に到着する、プッシュされたSMSメッセージ、またはウェブリクエストを介して返送(プル)された位置情報など)に対応する。近傍のおよび遠隔の位置ソースは、いずれも抽象的な論理エンティティとして取り扱われる。これによって、多くの異なる種類の位置情報に対し、プログラミングモデルは似通ったものとなる。
位置データを受信すると、ロケーションマネージャ320は、アプリケーション330に関連する位置イベントがトリガされていないかどうかを判断する。位置ソースからアプリケーション330に未加工の位置データしか提供することができないのではなく、ロケーションマネージャ320はある関心地域と何らかの論理的関係性をもつアイテムの発生時に、関心地域への出入りなどの位置イベントを提供する。
一般に、関心地域は位置データの抽象物を提供する(図5および関連する議論を参照されたい)。関心地域は、どんな地域でもよく、屋内でも屋外でもよい。例えば、屋内の位置を使用して不動産(例えば会議室)および/または動産(例えば人、事務用機器、在庫品)の位置を示すことができる。
屋外の関心地域は、街区、建物または他の目印の周囲、あるいはその他の予め定義された地域であってもよい。さらに、屋外の関心地域は、動産(例えば車、または人)であってもよい。
未加工の位置データをあるアプリケーションが解釈しなければならないのではなく、アプリケーション330は、関心地域とのアイテムの関連性に基づいて位置イベントを登録する。予め定義された位置イベントが発生すると、ロケーションマネージャ320はアプリケーション330に通知を行う。その時点で、アプリケーション330は、その位置イベントを処理するために開発されたイベント駆動型コードルーチンを実行する。
位置認識型アプリケーション330は、生成された位置イベントに応答する。位置イベントが発生すると、位置認識型アプリケーション330は、1組の重み付き判断基準(weighted criteria)をマップマネージャ340に供給する。例えば、重み付き判断基準は、提案された地図解像度、およびアプリケーションが自ら描く地図上に表示しようとする1組のオブジェクトを含むことができる。アプリケーションはさらに、その既存の地図上にレンダリングしたいオブジェクトを提供することもできる。地図のイベント駆動型レンダリングに応答することに加え、アプリケーションは自動推進型であってもよい。例えば、アプリケーションは定期的に情報をプルし、新たな地図のレンダリングを行うタイマをもつことができる。したがって、プッシュされたイベント駆動型応答に加えて、アプリケーションはデータをプルし、処置を講じることができる。
マップマネージャ340は、アプリケーションから地図情報を抽出し、したがって地図や位置情報をどう扱うかに関する詳細を知っている必要がない。アプリケーションが複雑な地図レンダリングコードを含む必要があるのではなく、アプリケーションはマップマネージャ340に表示してほしい地図の名前や種類を提供する。地図生成器344は、どんな単一のアプリケーションまたはレンダリングエンジンとも連動していない。例えば、あるレンダリングエンジンはベクターベースでもよく、別のレンダリングエンジンはビットマップベースでもよい。位置認識型アプリケーション330は、地図生成器344と対話するためのインターフェースを備えている。
マップマネージャ340は、アプリケーションに1組の豊富な機能を提供し、したがって位置認識型アプリケーション330は地図コードをどう実施すべきかの詳細を知る必要がない。例えば、アプリケーション330は、ユーザが地図上のあるエリアを指し示し、次いでそのデータの緯度および経度、あるいは屋内の地図の場合は屋内の座標系への変換を可能にしたいものと仮定する。マップマネージャ340は、その情報をアプリケーション330に提供する。マップマネージャ340は、アプリケーション330と地図レンダリング技術との間のブローカとして働き、アプリケーションに機能を提供する。そうした機能としては、デバイス上のX/Y画面座標を地図上の緯度/経度/高度の地図座標へマッピングすることが含まれる。例えば、ユーザは、自らの位置を入力するために地図を表示中の画面をクリックすることができる。ユーザの入力に応答して、マップマネージャはX/Y画面座標を地図上の緯度/経度/高度の地図座標へマッピングする。同様に、マップマネージャ340は地図上の緯度/経度/高度の地図座標をX/Y画面座標へマッピングして、アプリケーションが表示中の地図上に動的にレンダリングを行えるようにする。スキーエリアの地図など一部の地図レンダリングにおける高度は、X/Y位置に大きな影響を及ぼすことがある。X/Y画面座標を地図上の緯度/経度/高度の地図座標に変換するには、多くの方法がある。一般に、マップマネージャはX/Y画面座標を受け取り、座標を地図にマッチさせ、次いで、地図の尺度、投影図法および地図の境界線に基づいて緯度/経度/高度座標を提供する。アプリケーションは、地図自体がどのようにしてレンダリングされているか、あるいはどの「投影図法」が使用されているかを理解する必要はない。メルカトル図法、円筒図法、極射影法、格子投影法などの古典的な地図投影図法および特別な投影図法(例えば、スキーエリアの地図やスタジアムの座席図など)を含むが、それだけには限らない多くの異なる地図投影図法が可能である。アプリケーションは、異なる投影図法の間をシームレスに動くことができる。
マップマネージャ340はまた、アプリケーション330に、1組の利用可能な地図に関する高位のイベントを供給する。これらのイベントは、アプリケーションが要求する判断基準を満たす地図がいくつか利用可能となっている場合などに、アプリケーションに重要な情報を提供する。アプリケーション330は、表示用の地図を1つだけ使用することに限定されない。例えば、あるアプリケーションは、ある一定の時間は市街地図を使用し、別の時間には地下鉄の地図(例えば、バスの運行経路、地下鉄のトンネルなどを表示)を使用することができる。マップマネージャ340は、地図をその適合性の順序に従ってランク付けする。アプリケーション330から提供された判断基準を満たす地図は利用可能でないが、マップマネージャ340がその判断基準の一部を満たす地図を探し出すことができる場合は、それらの地図を提供することができる。
マップマネージャ340はまた、デバイス上への新たな地図の動的プロビジョニングを可能にする。これらの地図は、いつでもデバイスにダウンロードすることができる。例えば、新たな公共輸送路が追加されると、公共交通アプリケーションのために新たな地図をダウンロードすることができる。一実施形態によれば、これらの地図は2つのファイル、すなわちバイナリでマップマネージャからは不透明な1つのファイルと、マップマネージャが理解できる1つのファイルとで表現される。別の実施形態によれば、地図はXMLファイルを使用して表現される。マップマネージャは、XMLファイルを読み、地図をオンデバイスでローカルな地図データストアに追加するのに必要な情報を入手することができる。地図はまた、開発者によって、あるいは別のソースを通して地図ストアに追加することもできる。
例示的XML表現を次に示す。
Figure 0004938284
MapProjectionは、地図を表示するのに使用されている図法を参照する。この例では、地図投影法の種類は単純な格子である。MetersPerPixelは、地図の平均解像度を参照する。MapInfoClassは、この地図についての質問に答えるのに必要なカスタムクラスがあるかどうかを参照する。このフィールドは、この地図が表示された場合に呼び出し得るカスタムクラスを開発者がプログラミング環境に含めることを可能にする。同様に、CustomMapRendererは、地図を描くのにカスタムレンダリングエンジンが必要かどうかを参照する。SimpleLatLongRectangleフィールドは、地図を緯度および経度の座標で画定された長方形として識別する。
以下の例は、いくつかのカスタムフィールドが使用される様子を示す。
Figure 0004938284
マップマネージャ340は、アプリケーション330が使うかもしれない複数の地図を、利用可能な状態でデバイス上の地図ストア(342)内にもつことができる。マップマネージャ340は、デバイス上の地図ストア342内の利用可能な1組の地図を検索し、使用すべき最適の地図を探す。選択の後、最適の地図が選択されレンダリングされる。
図4は、本発明の諸態様による、位置認識型アプリケーションの開発のための対話の状態図である。
まず状態410で、地理的な関心地域が画定される。関心地域の選択は、位置認識型アプリケーションが実行(deploy)される前でも後でもよい。さらに、この情報は、いつでもデバイスに送出することができる。関心地域とは、ある地図に関連する予め画定された領域である。関心地域は、画定可能などんな大きさでもよい。例えば、関心地域は、その大きさが1平方メートルでも、あるいはある国全体でもよい。関心地域は、位置認識型アプリケーションの必要に基づいて画定される。例えば、開発中の位置認識型アプリケーションは、子供がいつ学校を出て家に帰るかを判断するものであると仮定する。この具体例では、関心地域は学校を含む地域でよく、別の関心地域は子供の家でよい。関心地域の一部は開発者が選択でき、他の関心地域はユーザが選択することができる。例えば、上述の例などの多くのアプリケーションは、アプリケーションがユーザに提供された後に構成される。上述の例では、親が関心地域を選択することができる。
状態420は、地図および地図サーバの選択を示す。開発者は、システム内で利用可能な地図から選択するか、あるいは自ら地図を作成することができる。本発明の一実施形態によれば、様々な位置認識型アプリケーションが同じ地図を使用できるように、利用可能な地図が複数のロケーションアプリケーションに共用される。このようにすると、各位置認識型アプリケーションが自らの地図を開発しなくて済む。ほとんどの場合、地図レンダリングの詳細は、位置認識型アプリケーションの開発者からは見えない。開発者が自らのレンダリングソフトウェアを含めたいと望むのであれば、状態440で開発者は自らのレンダリングソフトウェアを含めることができる。
状態440で、開発者は、レンダリングのための自らの選択を設定することもできる。例えば、開発者はアプリケーションの一部にベクターベースのレンダリングエンジンを使用し、アプリケーションの別の部分ではビットマップベースのシステムを使用したいかもしれない。地図エンジンは、多くの異なるソースが提供することができる。エンジンを構築したいと考えるどんな開発者も、プログラミングインターフェースに適合する地図エンジンを供給することができる。各地図エンジンは、開発システムにプラグインされる。
状態430で、開発者は、自らのアプリケーション内の関心地域に関連するイベントに応答して実行されるイベントベースの位置コードのプログラミングを行う。このイベントベースのコードは、開発中の位置認識型アプリケーションの種類に依存しており、多くの異なる種類のデータを含むことができる。例えば、あるプログラムは、ユーザが所定の位置に到達した時点である動作を実施するかもしれない。上述の子供を追跡する例では、特定の時点における子供の位置に基づいて家または学校をハイライトする例示的ルーチンのプログラミングが可能である。開発者は、さらにイベントに応答して、地図上にアイテムを配置することもできる。
状態450で、位置認識型アプリケーションは、本物のおよび/またはシミュレートされた位置ソースを使用してテストすることができる。システムは、実地に使用される前に試験できるように、シミュレータに位置ソースを提供する。シミュレートされたデータソースを使用すると、位置イベント発生時に開発者のイベントベースの位置コードのテストが可能になる。シミュレートされた位置ソースデータの別の使用法は、予め記録された現実の位置データを「再生」することである。これは、アプリケーションの開発、テストおよびデバッグに有用である。
図5は、本発明の諸態様による、例示的関心地域の画定を示す。図5に示すように、2つの関心地域が画定されている。関心地域#1は楕円形の境界領域で画定され、関心地域#2は長方形の境界で画定される。これらの関心地域は所定の幾何学的図形を使用して画定されているが、関心地域は、地域をより明確に画定するどんなやり方で画定することもできる。例えば、関心地域は近辺、郡、特定の道路の間の地域などとして画定することができる。本発明の一実施形態によれば、開発者は1組の予め定義された図形を使用して関心地域を画定する。さらに、ユーザは地図上の地点を指し示し、その地点から広がる半径を提供することで関心地域とすることができる。関心地域はまた、緯度および経度の座標を使用して設定することもできる。
図5に示す地図は、通りを含む市内地図を示しているが、地図はどんな種類のものでもよい。地図の例としては、スキー地図、森、公園、またはゴルフコースの地図、建物の平面図、スタジアムの座席図などがある。先に論じたように、関心地域が指定されると、何かが地域を出入りすることがイベントのトリガとなり得る。
図示されていないが、関心地域はある特定の種類の位置でもよい。例えば、ある位置認識型アプリケーションは、自らがコーヒーショップまたは映画館に近付いた時点で、そのことを知りたいかもしれない。この例では、システムが知り得た全てのコーヒーショップまたは映画館が関心地域となり得る。さらに多くのコーヒーショップが利用可能となるにつれて、それらの位置はアプリケーションに動的に追加され、したがってアプリケーションがそれらを認識する。他の位置認識型アプリケーションは、関心地域を特定の店、競技場、バス停、オフィスビルなどとして定義するかもしれない。
図6は、本発明の諸態様による、位置認識型アプリケーションが使用できる例示的な地図を示す。図示されるように、これらの地図は緯度および経度によって画定される単純な長方形として画定される。4つの地図はそれぞれ、左上の緯度および経度と、右下の緯度および経度を含む。先に図3に関して論じたように、地図は多くの異なるやり方で画定することができる。どんな位置認識型アプリケーションも、それが適切な場合、表示用にこれらの地図を使用することができる。
図7は、本発明の諸態様による、位置認識型アプリケーションの例示的なシミュレーションスクリーンショットを示す。シミュレータ内で、小さくより詳細なビューと大域的で全体的なビューとを含む2つの地図ビューが表示されている。地図上には、円形の領域および四角形の領域で表された、予め定義された関心地域が示される。シミュレートされた動作がある地域を出入りすると、開発者は自ら開発した適切なコードが正しく動作しているかどうかを判断することができる。
例示的動作環境
図1を参照すると、本発明を実装するための例示的システムの1つは、コンピューティングデバイス100などのコンピューティングデバイスを含む。ごく基本的な構成では、コンピューティングデバイス100は一般に少なくとも1つの処理装置102およびシステムメモリ104を含む。コンピューティングデバイスの厳密な構成および種類に応じて、システムメモリ104は揮発性(例えばRAM)でもよく、非揮発性(例えばROM、フラッシュメモリなど)でもよく、あるいは両者の何らかの組合せでもよい。システムメモリ104は一般に、オペレーティングシステム105および1つまたは複数のアプリケーション106を含み、プログラムデータ107を含むことができる。一実施形態では、アプリケーション106は、モバイルデバイスのための位置認識型アプリケーションを構築するのに使用する、位置認識型プログラミングインターフェース120を含むことができる。この位置認識型プログラミングインターフェースは、マップ選択、管理およびレンダリングインターフェースと統合することができる。この基本構成を、図1に点線108で囲まれた構成要素で示す。
コンピューティングデバイス100は、追加の特徴または機能をもつことができる。例えば、コンピューティングデバイス100は例えば磁気ディスク、光ディスク、テープなど追加のデータ記憶装置(着脱式および/または固定式)を含むことができる。このような追加の記憶装置は、図1では着脱式記憶装置109および固定式記憶装置110として示す。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、他のデータなどの情報の記憶のための任意の方法または技術で実装される揮発性および非揮発性、着脱式および固定式の媒体を含むことができる。システムメモリ104、着脱式記憶装置109および固定式記憶装置110は、いずれもコンピュータ記憶媒体の例である。コンピュータ記憶媒体としては、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、DVDまたは他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは所望の情報を記憶し、コンピューティングデバイス100がアクセスできるようなその他の全ての媒体が含まれるが、それだけには限らない。そのような一切のコンピュータ記憶媒体は、デバイス100の一部となることができる。コンピューティングデバイス100はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置など1つ(または複数)の入力装置112をもつことができる。ディスプレイ、スピーカ、プリンタなど1つ(または複数)の出力装置114も含むことができる。
コンピューティングデバイス100はまた、デバイスが例えばネットワークを介して他のコンピューティングデバイス118と通信できるようにする通信接続116も含むことができる。通信接続116は、通信媒体の一例である。通信媒体は、一般にコンピュータ可読命令、データ構造、プログラムモジュール、あるいは例えば搬送波または他の搬送機構などの変調データ信号内の他のデータとして実施することができ、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号内に情報が符号化されるように、その1つまたは複数の特徴が設定または改変された信号を意味する。限定ではなく例を示すと、通信媒体は有線ネットワークや直接線接続などの有線媒体と、音響、RF、赤外線およびその他の無線媒体とを含む。ここで使用されるコンピュータ可読媒体という用語は、記憶媒体と通信媒体のどちらも含む。
図2は、本発明の例示的一実施形態で使用することができるモバイルコンピューティングデバイスを示す。図2を参照すると、本発明を実施するための1つの例示的なシステムは、モバイルコンピューティングデバイス200などのモバイルコンピューティングデバイスを含む。モバイルコンピューティングデバイス200は、プロセッサ260、メモリ262、ディスプレイ228およびキーパッド232を含む。メモリ262は一般に、揮発性メモリ(例えばRAM)および非揮発性メモリ(例えばROM、フラッシュメモリなど)の両方を含む。モバイルコンピューティングデバイス200は、メモリ262に常駐しプロセッサ260上で実行される、例えばMicrosoft CorporationのWindows(登録商標)CEオペレーティングシステムなどのオペレーティングシステム264を含む。キーパッド232は、プッシュボタン式の数字ダイアルパッド(例えば一般の電話にあるような)でも、マルチキーキーボード(例えば従来型キーボード)でもよい。ディスプレイ228は液晶ディスプレイでも、モバイルコンピューティングデバイスで一般に使われるその他任意の種類のディスプレイでもよい。ディスプレイ228はタッチセンシティブでもよく、その場合は入力装置としても働く。
1つ(または複数)のロケーションアプリケーション266など1つまたは複数のアプリケーションプログラムがメモリ262にロードされ、オペレーティングシステム264上で実行される。モバイルコンピューティングデバイス200上には1つまたは複数の位置認識型アプリケーション266が常駐し、位置ベースのアプリケーションに関連する命令を実行するようにプログラムされている。位置認識型アプリケーションは、デバイスのハードウェアまたはソフトウェアに常駐させることができる。モバイルコンピューティングデバイス200はまた、メモリ262内に揮発性および非揮発性記憶装置を含むこともできる。メモリ262はまた、位置ベースの情報の記憶に使用される位置データストア268、および地図ベースの情報の記憶に使用される地図ストア269を含む。位置ストア268は、デバイス上の全ての位置認識型アプリケーション266が使用することができる位置情報を記憶するための大域的な機構である。地図ストア269も、デバイス上の全ての位置認識型アプリケーション266が使用することができる地図情報を記憶するための大域的な機構である。一実施形態によれば、リポジトリ268は位置および地図情報のオンデバイスのキャッシュである。モバイルデバイス200には、2つ以上の位置ストアがあってもよい。例えば、プライベートおよびパブリックの位置データストアがあってもよい。
モバイルコンピューティングデバイス200は、1つまたは複数の電池として実装できる電源270を含む。電源270はさらに、ACアダプタあるいは電池を補給または充電する電動格納台(powered docking cradle)などの外部電源を含むことができる。
モバイルコンピューティングデバイス200は、2種類のオプションの外部通知機構、すなわちLED240および音声インターフェース274と共に示されている。これらのデバイスは、起動した場合、プロセッサ260および他の構成要素が電池の電力を節約するためにシャットダウンした場合でも通知機能が指示したある持続期間中電源が入ったままであるように、電源270に直接結合することができる。音声インターフェース274は、ユーザとの間の音響信号の送受信に使用される。例えば、音声インターフェース274は音響出力を提供するためにスピーカに結合され、例えば電話による会話が容易になるように、音響入力を受信するためにマイクロフォンに結合できる。
モバイルコンピューティングデバイス200はまた、通信を送受する機能を果たす、無線インターフェース層などの1つ(または複数)の通信接続も含む。通信接続272は、モバイルコンピューティングデバイス200と外界との間の無線接続性を促進する。一実施形態によれば、通信接続272との間の送受信は、オペレーティングシステム264の制御下で実施される。
図8は、本発明の諸態様による、位置認識型開発システム800を全般的に示した機能ブロック図である。サーバ810およびコンピューティングデバイス830は、図1に関して前述したようなコンピューティングデバイスであり、モバイルデバイス820は図2に関して前述したようなモバイルデバイスである。
一般に、ユーザはコンピューティングデバイス830などのコンピューティングデバイスを使用して位置認識型アプリケーションを開発する。しかし、位置認識型アプリケーションは、モバイルデバイス820などのモバイルデバイスを使用して開発することもできる。位置認識型プログラミング環境832は、開発者に位置認識型アプリケーションを開発するための1組のプログラミングインターフェースを提供するように構成される。位置認識型プログラミング環境832は、サーバ810と通信するように構成される。一実施形態によれば、サーバ810はコンピューティングデバイス830に位置ストア812からの位置情報と、地図ストア813からの地図情報とを提供するように構成される。サーバ810またはモバイルデバイスはまた、位置認識型アプリケーションを開発中に位置ソースをシミュレートするように構成することもできる。例えば、シミュレートされた位置ソースをモバイルデバイス上で実行させ、GPSソースなどの入力をシミュレートすることができる。コンピューティングデバイスは、いくつかのクライアントサーバプロトコルのうちのいずれか1つを使用して通信することができる。
モバイルデバイス820は、位置認識型プログラミング環境832を使用して開発された位置認識型アプリケーション822を含む。モバイルデバイス820には、2つ以上の位置認識型アプリケーションを含むことができる。モバイルデバイス820には、N個の位置ソース821(1−N)が接続されている。これらの位置ソースはオンデバイスもオフデバイスも含み、前述のようにロケーションアプリケーション822に位置データを提供する。位置ストア824は、モバイルデバイス820上の全ての位置認識型アプリケーションがアクセスすることのできる位置情報を含む。地図ストア825は、モバイルデバイス820上の全ての位置認識型アプリケーションがアクセスすることのできる地図情報を含む。例えば、位置ストア824および地図ストア825は、これらのアプリケーションが共用することのできる地図、レンダリングエンジン、およびその他のあらゆる情報を含むことができる。
セルラー/ポケットベルネットワーク850は、無線デバイスとの間のメッセージの送達および受信を担うネットワークである。セルラー/ポケットベルネットワーク850は、無線および有線のどちらの構成要素も含むことができる。例えば、セルラー/ポケットベルネットワークは、有線電話ネットワークにリンクされたセルラーアンテナを含んでもよい。一般に、セルラーアンテナは、携帯電話との間の通信や、長距離通信リンクなどを搬送する。無線デバイスはまた、モバイルデバイス用としてますます利用可能となっているWi−Fiカードなどのハードウェアを使用してWANやLANなどと直接接続することができる。
ゲートウェイ860は、セルラー/ポケットベルネットワーク850とWAN/LAN840との間のメッセージのルーティングを行う。例えば、あるコンピュータユーザは携帯電話に宛てたメッセージを送信するかもしれない。ゲートウェイ860は、WAN/LAN840からセルラー/ポケットベルネットワーク850へメッセージを運ぶ手段を提供する。逆に、セルラーネットワークに接続したデバイスをもつユーザがウェブをブラウズしているかもしれない。ゲートウェイ860は、WAN/LAN840とセルラー/ポケットベルネットワーク850との間のHTTPメッセージの送受信を可能にする。
上述の仕様、例およびデータは、本発明の構成の製造および使用に関する完全な説明を提供する。本発明の精神および範囲から逸脱することなく本発明の多くの実施形態が作成できるため、本発明は添付の特許請求の範囲にある。
本発明の例示的実施形態で使用できる例示的なコンピューティングデバイスを示す図である。 本発明の例示的実施形態で使用できる例示的なコンピューティングデバイスを示す図である。 位置認識型システムを示す図である。 位置認識型アプリケーションの開発のための対話の状態図である。 例示的関心地域の画定を示す図である。 位置認識型アプリケーションが使用できる例示的な地図を示す図である。 位置認識型アプリケーションの例示的なシミュレーションスクリーンショットを示す図である。 本発明の諸態様による位置認識型開発システムを全般的に示した機能ブロック図である。
符号の説明
100 コンピューティングデバイス
102 処理装置
104 システムメモリ
105 オペレーティングシステム
106 アプリケーション
107 プログラムデータ
109 着脱式記憶装置
110 固定式記憶装置
112 1つ(または複数)の入力装置
114 1つ(または複数)の出力装置
116 1つ(または複数)の通信接続
118 他のコンピューティングデバイス
120 位置認識型プログラミングインターフェース

Claims (21)

  1. 位置認識型アプリケーションのためのシステムであって、
    移動中のアイテムの位置と少なくとも1つの地理的な関心地域の関連性を示す位置イベントが少なくとも1つ定義されており、前記位置イベントの発生に応答して、ユーザに表示したい少なくとも1つの地図の名前および/または地図の種類を決定して提供する位置認識型アプリケーションであって、前記位置イベントは、前記アイテムの位置が前記関心地域に入ったというイベント、前記アイテムの位置が前記関心地域を出たというイベント、および前記アイテムの位置が前記関心地域内で動いたというイベントのうちの少なくとも1つのイベントを含み、前記関心地域は、前記位置認識型アプリケーションの必要に基づいて、1つ以上事前に定義され、前記位置認識型アプリケーションは、地図の適合性を判断するのに使用される前記位置イベントに関連つけられた1組の重み付き判断基準(weighted criteria)を選択して提供する、位置認識型アプリケーションと、
    地図情報を記憶するための地図ストアであって、前記地図ストアは、複数の位置認識型アプリケーションによって共用できる、地図ストアと、
    前記アイテムの位置を提供する少なくとも1つの位置ソースから少なくとも2つの位置情報を受信し、位置認識型アプリケーションに関する位置イベントが発生していないかどうかを判断し、前記位置イベントが発生したと判断した場合に、前記位置イベントが発生したことを前記位置認識型アプリケーションに通知するように構成されたロケーションマネージャと、
    前記位置認識型アプリケーションによって決定されて提供された前記表示したい地図の名前および/または地図の種類を用いて、前記地図ストアから利用可能な前記関心地域を含む1組の地図を検索し、前記位置認識型アプリケーションから提供された前記1組の重み付き判断基準に基づいて、地図の適合性の順序に従って前記利用可能な1組の地図をランク付けして前記位置認識型アプリケーションに提供し、前記位置認識型アプリケーションが最適の地図を選択するようにさせ、前記選択された最適の地図の地図情報から、地図画像生成エンジンを使用して、前記最適の地図の画像を生成するように構成されたマップマネージャであって、前記地図画像生成エンジンは、少なくとも、ビットマップ形式によって画像を生成する地図画像生成エンジン、およびベクター形式によって画像を生成する地図画像生成エンジンを含み、複数の位置認識型アプリケーションによって共用することができる、マップマネージャと
    を備えることを特徴とする位置認識型アプリケーションのためのシステム。
  2. 前記少なくとも1つの位置ソースは、少なくとも1つの近傍位置ソースと遠隔位置ソースとを含むことを特徴とする請求項1に記載のシステム。
  3. 前記少なくとも1つの位置ソースは、GPS受信機、ユーザ入力、電話システム、RFIDタグ、およびネットワーク上のデバイスにプッシュまたはプルされた位置データを含むグループから選択されることを特徴とする請求項2に記載のシステム。
  4. 前記重み付き判断基準は、推奨地図解像度、および/または前記位置認識型アプリケーションが地図上に表示したい1組のオブジェクトを含むことを特徴とする請求項1に記載のシステム。
  5. 前記マップマネージャはさらに、ユーザ入力を受信し、前記ユーザ入力を地図上の位置に変換するように構成されることを特徴とする請求項1に記載のシステム。
  6. 前記位置認識型アプリケーションはさらに、前記マップマネージャに地図上に表示できる少なくとも1つのオブジェクトを提供するように構成されることを特徴とする請求項1に記載のシステム。
  7. 前記地図ストアはさらに、動的プロビジョニングができるように構成されることを特徴とする請求項1に記載のシステム。
  8. 前記地図情報は、XML表現を使用した各地図の表現を含むことを特徴とする請求項7に記載のシステム。
  9. 前記表現は、地図の投影図法、解像度、地図を表示するのに使用した地図画像生成エンジンの指示、および前記地図が含む地域を含むことを特徴とする請求項7に記載のシステム。
  10. 位置認識型アプリケーションのためのコンピュータ実行方法であって、前記位置認識アプリケーションには、移動中のアイテムの位置と少なくとも1つの地理的な関心地域の関連性を示す位置イベントが少なくとも1つ定義されており、前記位置イベントは、前記アイテムの位置が前記関心地域に入ったというイベント、前記アイテムの位置が前記関心地域を出たというイベント、および前記アイテムの位置が前記関心地域内で動いたというイベントのうちの少なくとも1つのイベントを含み、前記関心地域は、前記位置認識型アプリケーションの必要に基づいて、1つ以上事前に定義され、前記方法は、
    ロケーションマネージャが、前記アイテムの位置を提供する少なくとも1つの位置ソースから少なくとも2つの位置情報を受信するステップと、
    前記ロケーションマネージャが、前記位置認識型アプリケーションに関する位置イベントが発生していないかどうかを判断するステップと、
    前記位置イベントが発生したと判断した場合に、前記ロケーションマネージャが、前記位置イベントが発生したことを前記位置認識型アプリケーションに通知するステップと、
    前記位置イベントの発生に応答して、前記位置認識型アプリケーションが、ユーザに表示したい少なくとも1つの地図の名前および/または地図の種類を決定して提供するステップであって、前記位置認識型アプリケーションは、マップマネージャに、地図の適合性を判断するのに使用される前記位置イベントに関連つけられた1組の重み付き判断基準(weighted criteria)を選択して供給する、ステップと、
    前記マップマネージャが、前記位置認識型アプリケーションから前記表示したい地図の名前および/または地図の種類を受け取るステップと、
    前記マップマネージャが、前記受け取った示したい地図の名前および/または地図の種類を用いて、地図ストアから利用可能な前記関心地域を含む1組の地図を検索するステップであって、前記地図ストアは、他の位置認識型アプリケーションが共用できる、ステップと、
    前記マップマネージャが、前記位置認識型アプリケーションから供給された前記1組の重み付き判断基準に基づいて、地図の適合性の順序に従って前記利用可能な1組の地図をランク付けして前記位置認識型アプリケーションに提供し、前記位置認識型アプリケーションが最適の地図を選択するようにさせるステップと、
    前記マップマネージャが、前記選択された最適の地図の地図情報から、地図画像生成エンジンを使用して、前記最適の地図の画像生成するステップであって、前記地図画像生成エンジンは、他の認識型アプリケーションが共用することができ、少なくとも、ビットマップ形式によって画像を生成する地図画像生成エンジン、およびベクター形式によって画像を生成する地図画像生成エンジンを含む、ステップと
    を備えることを特徴とする方法。
  11. 前記地図にオーバーレイするために、前記位置認識アプリケーションが、前記地図画像生成エンジンに少なくとも1つのオブジェクトを供給するステップをさらに含むことを特徴とする請求項10に記載の方法。
  12. 前記マップマネージャが、前記地図ストアに対して動的プロビジョニングを行うステップをさらに含むことを特徴とする請求項10に記載の方法。
  13. 前記地図は、XML表現を使用したその地図の表現を含むことを特徴とする請求項10に記載の方法。
  14. 前記表現は、地図の投影図法、解像度、地図を表示するのに使用した地図画像生成エンジンの指示、および前記地図が含む地域を含むことを特徴とする請求項13に記載の方法。
  15. 位置認識型アプリケーションのためのコンピュータ実行可能命令プログラムを記録したコンピュータ可読記録媒体であって、前記位置認識アプリケーションには、移動中のアイテムの位置と少なくとも1つの地理的な関心地域の関連性を示す位置イベントが少なくとも1つ定義されており、前記位置イベントは、前記アイテムの位置が前記関心地域に入ったというイベント、前記アイテムの位置が前記関心地域を出たというイベント、および前記アイテムの位置が前記関心地域内で動いたというイベントのうちの少なくとも1つのイベントを含み、前記関心地域は、前記位置認識型アプリケーションの必要に基づいて、1つ以上事前に定義され、前記コンピュータ実行可能プログラムは、前記コンピュータに
    前記アイテムの位置を提供する少なくとも1つの位置ソースから少なくとも2つの位置情報を受信し、前記位置情報を他の位置認識型アプリケーションが共用できる位置ストアに記憶するステップと、
    前記位置認識型アプリケーションに関する位置イベントが発生していないかどうかを判断するステップと、
    前記位置イベントが発生したと判断した場合に、前記位置認識型アプリケーションに前記位置イベントが発生したことを通知するステップと、
    前記位置認識型アプリケーションが前記位置イベントの発生に応答してユーザに表示したい少なくとも1つの地図の名前および/または地図の種類を決定して提供するようにさせるステップであって、前記位置認識型アプリケーションが地図の適合性の順序を判断するのに使用される前記位置イベントに関連つけられた1組の重み付き判断基準(weighted criteria)を選択して供給するようにさせる、ステップと、
    前記位置認識型アプリケーションから前記表示したい地図の名前および/または地図の種類を受け取るステップと、
    前記受け取った表示したい地図の名前および/または地図の種類を用いて、地図ストアから利用可能な前記関心地域を含む1組の地図を検索するステップであって、前記地図ストアは、他の位置認識型アプリケーションが共用できる、ステップと、
    前記位置認識型アプリケーションから供給された前記1組の重み付き判断基準に基づいて、地図の適合性の順序に従って前記利用可能な1組の地図をランク付けして前記位置認識型アプリケーションに提供し、前記位置認識型アプリケーションが最適の地図を選択するようにさせるステップと、
    前記選択された最適の地図の地図情報から、地図画像生成エンジンを使用して、前記最適の地図の画像生成するステップであって、前記地図画像生成エンジンは、他の認識型アプリケーションが共用することができ、少なくとも、ビットマップ形式によって画像を生成する地図画像生成エンジン、およびベクター形式によって画像を生成する地図画像生成エンジンを含む、ステップと
    を実行させることを特徴とするコンピュータ可読記録媒体。
  16. 前記コンピュータ実行可能プログラムは、前記コンピュータに、前記地図にオーバーレイするために前記地図画像生成エンジンに少なくとも1つのオブジェクトを供給するステップをさらに実行させることを特徴とする請求項15に記載のコンピュータ可読記録媒体。
  17. 前記コンピュータ実行可能プログラムは、前記コンピュータに、前記地図ストアに対して動的プロビジョニングを行うステップをさらに実行させることを特徴とする請求項15に記載のコンピュータ可読記録媒体。
  18. 前記地図は、XML表現を使用したその地図の表現を含むことを特徴とする請求項15に記載のコンピュータ可読記録媒体。
  19. 前記表現は、地図の投影図法、解像度、地図を表示するのに使用される地図画像生成エンジンの表示、および前記地図が含む地域を含むことを特徴とする請求項15に記載のコンピュータ可読記録媒体。
  20. 前記地図画像生成エンジンを使用して、前記選択された最適の地図の画像生成するステップは、画像を生成される地図の種類に応じて複数の地図画像生成エンジンを切り替えるステップを含むことを特徴とする請求項15に記載のコンピュータ可読記録媒体。
  21. 前記地図画像生成エンジンを使用して、前記選択された最適の地図を画像生成するステップは、画像を生成される地図の種類に応じて、メルカトル図法、極射影法、格子投影法およびカスタムな図法のうち少なくとも2つの投影図法から選択された投影図法を選択するステップをさらに含むことを特徴とする請求項20に記載のコンピュータ可読記録媒体。
JP2005312951A 2004-11-26 2005-10-27 位置認識型モバイルデバイス用ソフトウェアの開発 Expired - Fee Related JP4938284B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/998,081 US7627425B2 (en) 2004-11-26 2004-11-26 Location aware mobile-device software development
US10/998,081 2004-11-26

Publications (2)

Publication Number Publication Date
JP2006153863A JP2006153863A (ja) 2006-06-15
JP4938284B2 true JP4938284B2 (ja) 2012-05-23

Family

ID=35844842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005312951A Expired - Fee Related JP4938284B2 (ja) 2004-11-26 2005-10-27 位置認識型モバイルデバイス用ソフトウェアの開発

Country Status (5)

Country Link
US (3) US7627425B2 (ja)
EP (1) EP1662407A3 (ja)
JP (1) JP4938284B2 (ja)
KR (1) KR20060059167A (ja)
CN (1) CN1779682B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9128956B2 (en) 2004-11-26 2015-09-08 Microsoft Technology Licensing, Llc Location aware mobile-device software development

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739038B2 (en) 2004-12-17 2010-06-15 Information Patterns Llc Methods and apparatus for geo-collaboration
US7353034B2 (en) 2005-04-04 2008-04-01 X One, Inc. Location sharing and tracking using mobile phones or other wireless devices
US7519470B2 (en) * 2006-03-15 2009-04-14 Microsoft Corporation Location-based caching for mobile devices
CN100423597C (zh) * 2006-06-08 2008-10-01 ***通信集团公司 嵌入移动终端的地图引擎及移动终端地图平台
US20080129487A1 (en) * 2006-11-30 2008-06-05 Crucs Holdings, Llc System and method for managing characteristics of a domain occupied by individuals
US20080133653A1 (en) * 2006-12-05 2008-06-05 Qualcomm Incorporated Apparatus and methods of providing and presenting representations of communication events on a map
US8364293B2 (en) * 2007-02-07 2013-01-29 Skyhawke Technologies, Llc Situation-neutral golf metrics systems and methods
JP4513833B2 (ja) * 2007-07-17 2010-07-28 株式会社デンソー 車両用衝突検知装置
US8583079B2 (en) 2007-08-14 2013-11-12 Mpanion, Inc. Rich presence status based on location, activity, availability and transit status of a user
US8489111B2 (en) 2007-08-14 2013-07-16 Mpanion, Inc. Real-time location and presence using a push-location client and server
US8050690B2 (en) * 2007-08-14 2011-11-01 Mpanion, Inc. Location based presence and privacy management
US8433296B2 (en) 2009-05-01 2013-04-30 Ryan Hardin Exclusive delivery of content within geographic areas
US20100311401A1 (en) * 2009-06-09 2010-12-09 Sprint Communications Company L.P. Communication session transfer from one communication device to another based on location correlated to time
US10397639B1 (en) 2010-01-29 2019-08-27 Sitting Man, Llc Hot key systems and methods
US20110191662A1 (en) * 2010-01-29 2011-08-04 Poteet Ii David Crawford Travel guides formed by aggregation of location-aware content from multiple publishers through a unified interface
US8239840B1 (en) * 2010-03-10 2012-08-07 Google Inc. Sensor simulation for mobile device applications
JP5520651B2 (ja) * 2010-03-24 2014-06-11 株式会社ナビタイムジャパン 経路案内システム、経路探索サーバ、端末装置および経路案内方法ならびにナビゲーション装置
JP5870603B2 (ja) * 2011-10-12 2016-03-01 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
CN103079163B (zh) * 2011-10-25 2016-08-03 高德软件有限公司 基于位置的信息分享方法、装置及***
JP5613721B2 (ja) * 2012-05-18 2014-10-29 株式会社日立製作所 テスト支援システム、テスト支援方法、及びプログラム
US20140067477A1 (en) * 2012-08-28 2014-03-06 Ebay, Inc. Systems and Methods for Shopping Trend Alert
US20140171116A1 (en) * 2012-12-14 2014-06-19 Anthony G. LaMarca Location-aware mobile application management
US9471693B2 (en) * 2013-05-29 2016-10-18 Microsoft Technology Licensing, Llc Location awareness using local semantic scoring
CN103294477B (zh) * 2013-06-14 2018-02-13 北京新学堂网络科技有限公司 使用Office文档进行移动开发项目管理的方法
US9741022B2 (en) 2014-02-26 2017-08-22 Blazer and Flip Flops, Inc. Parental controls
WO2015130971A1 (en) 2014-02-26 2015-09-03 Blazer And Flip Flops, Inc. Dba The Experience Engine, Inc. Increasing customer monetization
US9448085B2 (en) 2014-02-26 2016-09-20 Blazer and Flip Flops, Inc. Live branded dynamic mapping
CA2942543C (en) * 2014-03-15 2023-08-22 Urban Engines, Inc. Solution for highly customized interactive mobile maps
JP6097243B2 (ja) * 2014-03-26 2017-03-15 株式会社オプティム アプリインストールシステム、アプリインストール方法及びプログラム
KR101434961B1 (ko) * 2014-04-25 2014-09-01 (주)엔디씨에스 위치 기반 어플리케이션을 개발하는 방법 및 장치
US11526916B2 (en) 2015-04-28 2022-12-13 Blazer and Flip Flops, Inc. Intelligent prediction of queue wait times
US10515100B2 (en) * 2014-09-25 2019-12-24 School Maps Online Llc Systems and methods for interactive boundary mapping
WO2016172731A1 (en) 2015-04-23 2016-10-27 Blazer And Flip Flops, In. Dba The Experience Engine Targeted venue message distribution
US9906909B2 (en) 2015-05-01 2018-02-27 Blazer and Flip Flops, Inc. Map based beacon management
WO2017100801A1 (en) 2015-12-07 2017-06-15 Blazer and Flip Flops, Inc. dba The Experience Engine Wearable device
US10372194B2 (en) * 2016-02-09 2019-08-06 International Business Machines Corporation Optimizing use of location services in mobile applications to improve battery consumption
EP3819780A4 (en) * 2018-08-29 2021-07-28 Sony Group Corporation INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING METHOD
US20200133439A1 (en) * 2018-10-31 2020-04-30 International Business Machines Corporation Chat session dynamic user interface

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848373A (en) * 1994-06-24 1998-12-08 Delorme Publishing Company Computer aided map location system
US6148261A (en) * 1997-06-20 2000-11-14 American Calcar, Inc. Personal communication system to send and receive voice data positioning information
JP3893696B2 (ja) * 1997-10-24 2007-03-14 カシオ計算機株式会社 通信端末装置
US6266614B1 (en) * 1997-12-24 2001-07-24 Wendell Alumbaugh Travel guide
US6252544B1 (en) * 1998-01-27 2001-06-26 Steven M. Hoffberg Mobile communication device
US6233448B1 (en) * 1998-07-22 2001-05-15 Ericsson Inc. System, method and apparatus for automatic feature activation/deactivation based upon positioning
SE520822C2 (sv) 1999-02-17 2003-09-02 Telia Ab System för presentation av användaranpassad positionsberoende information på terminalutrustning
US20040215387A1 (en) * 2002-02-14 2004-10-28 Matsushita Electric Industrial Co., Ltd. Method for transmitting location information on a digital map, apparatus for implementing the method, and traffic information provision/reception system
US6266595B1 (en) * 1999-08-12 2001-07-24 Martin W. Greatline Method and apparatus for prescription application of products to an agricultural field
US7457628B2 (en) * 2000-02-29 2008-11-25 Smarter Agent, Llc System and method for providing information based on geographic position
DE10016674A1 (de) * 2000-04-04 2001-10-18 Bosch Gmbh Robert Verfahren zur Ausgabe von Daten in einem Fahrzeug und Fahrerinformationsvorrichtung
US7076255B2 (en) * 2000-04-05 2006-07-11 Microsoft Corporation Context-aware and location-aware cellular phones and methods
US6456234B1 (en) * 2000-06-07 2002-09-24 William J. Johnson System and method for proactive content delivery by situation location
US6421608B1 (en) * 2000-07-12 2002-07-16 Ricoh Company Limited Method and system of remote position reporting device
US6380890B1 (en) * 2000-08-11 2002-04-30 Motorola, Inc. Information appliance system having a navigational position generator and method
US6671619B2 (en) 2000-08-16 2003-12-30 Alpine Electronics, Inc. Navigation device
CN1304849A (zh) 2000-11-07 2001-07-25 临汾铁路分局介休机务段经营公司 实现机车轮缘自动喷油润滑的方法
US6944679B2 (en) * 2000-12-22 2005-09-13 Microsoft Corp. Context-aware systems and methods, location-aware systems and methods, context-aware vehicles and methods of operating the same, and location-aware vehicles and methods of operating the same
US6493630B2 (en) * 2001-02-16 2002-12-10 Wizeguides.Com Inc. Bundled map guide
US6639522B2 (en) * 2001-02-22 2003-10-28 Rockwell Collins, Inc. System and method of automatically triggering events shown on aircraft displays
US7259694B2 (en) 2001-02-26 2007-08-21 International Business Machines Corporation Wireless communication system and method to provide geo-spatial related event data
US6477460B2 (en) * 2001-02-27 2002-11-05 Metro One Telecommunications, Inc. Process and system for the annotation of machine-generated directions with easily recognized landmarks and other relevant information
US20020163547A1 (en) * 2001-04-30 2002-11-07 Michael Abramson Interactive electronically presented map
KR20040047736A (ko) * 2001-10-25 2004-06-05 아이신에이더블류 가부시키가이샤 정보 표시 시스템
JP4004818B2 (ja) * 2002-02-28 2007-11-07 松下電器産業株式会社 位置情報伝達装置及び方法
US7221287B2 (en) * 2002-03-05 2007-05-22 Triangle Software Llc Three-dimensional traffic report
US7386318B2 (en) 2002-03-19 2008-06-10 Pitney Bowes Mapinfo Corporation Location based service provider
US7565155B2 (en) * 2002-04-10 2009-07-21 Networks In Motion Method and system for dynamic estimation and predictive route generation
US6697734B1 (en) * 2002-04-17 2004-02-24 Nokia Corporation System and method for displaying a map having two scales
AU2003223091A1 (en) * 2002-04-30 2003-11-17 Telmap Ltd. Dynamic navigation system
US7181227B2 (en) 2002-06-14 2007-02-20 Cingular Wireless Ii, Llc Data structures and methods for location-based services within a wireless network
US6978206B1 (en) 2002-06-21 2005-12-20 Infogation Corporation Distributed navigation system
JP2004030457A (ja) * 2002-06-27 2004-01-29 Aisin Aw Co Ltd 携帯情報端末
EP1569138A1 (en) * 2002-07-23 2005-08-31 Samsung Electronics Co., Ltd. Index structure of metadata, method for providing indices of metadata, and metadata searching method and apparatus using the indices of metadata
JP3942987B2 (ja) * 2002-08-15 2007-07-11 アルパイン株式会社 ナビゲーションシステム、地図差分データの配信装置、及び車載用ナビゲーション装置
US6691032B1 (en) * 2002-09-09 2004-02-10 Groundspeak, Inc. System and method for executing user-definable events triggered through geolocational data describing zones of influence
US7027915B2 (en) 2002-10-09 2006-04-11 Craine Dean A Personal traffic congestion avoidance system
JP3975963B2 (ja) * 2003-04-28 2007-09-12 株式会社日立製作所 通信型ナビゲーションシステム
US7383316B2 (en) 2002-11-15 2008-06-03 Microsoft Corporation System and method for providing dynamic location information
DE60221262T2 (de) 2002-12-30 2008-01-03 Motorola, Inc., Schaumburg Positionsbestimmungssystem und -verfahren eines drahtlosen Kommunikationsgerätes
JP4236490B2 (ja) * 2003-03-18 2009-03-11 ぴあ株式会社 電子クーポン利用システムとそれを実現するためのコンピュータプログラムとその方法
JP2004301804A (ja) * 2003-04-01 2004-10-28 Nissan Motor Co Ltd ナビゲーション・システム
US7089109B2 (en) 2003-04-10 2006-08-08 Microsoft Corporation Comprehensive mapping data structures and methods for using the same
US6823256B1 (en) * 2003-05-06 2004-11-23 General Motors Corporation Method for associating real-time information with a geographical location
US20050122236A1 (en) * 2003-12-08 2005-06-09 Brauer R. K. Moving map information index
US7627425B2 (en) * 2004-11-26 2009-12-01 Microsoft Corporation Location aware mobile-device software development
US20120135744A1 (en) * 2009-07-21 2012-05-31 Kota Enterprises, Llc Systems and methods for generating and managing communication rules associated with geographic locations

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9128956B2 (en) 2004-11-26 2015-09-08 Microsoft Technology Licensing, Llc Location aware mobile-device software development

Also Published As

Publication number Publication date
US9128956B2 (en) 2015-09-08
EP1662407A2 (en) 2006-05-31
KR20060059167A (ko) 2006-06-01
CN1779682B (zh) 2010-09-08
US20060116817A1 (en) 2006-06-01
EP1662407A3 (en) 2007-03-07
CN1779682A (zh) 2006-05-31
US20150382141A1 (en) 2015-12-31
US20100042320A1 (en) 2010-02-18
JP2006153863A (ja) 2006-06-15
US7627425B2 (en) 2009-12-01

Similar Documents

Publication Publication Date Title
JP4938284B2 (ja) 位置認識型モバイルデバイス用ソフトウェアの開発
US7519470B2 (en) Location-based caching for mobile devices
Davies et al. Using and determining location in a context-sensitive tour guide
Kumar et al. Location based services using android (LBSOID)
US8675912B2 (en) System and method for initiating actions and providing feedback by pointing at object of interest
CN107209783A (zh) 自适应位置指示符
Luyten et al. ImogI: Take control over a context-aware electronic mobile guide for museums
Ramesh et al. Indoor Navigation using Augmented Reality for Mobile Application
Jana et al. An event-driven university campus navigation system on android platform
Jing et al. A development of mobile-based directory for UCSI University (UCSI Mobiletory)
Li et al. Mobile geographic information systems
Marshall Moving the museum outside its walls: An augmented reality mobile experience
Prashanth et al. Augmented reality-based campus navigation
Srinivasan Location based services to improve public transportation
Usman Design and implementation of an iPad web application for indoor-outdoor navigation and tracking locations
Tavera Romero et al. Development and Impact of a Mobile Application that Allows Users to Track Their Location on an Educational Institution Campus, a Simulation Study.
BRÃŽNCOVEAN et al. i-Locate. A comprehensive solution for indoor/outdoor localization
Bhimavarapu et al. Navigatour: A Mobile tourist information system
PEOPLE DESIGN AND IMPLEMENTATION OF A SECURE MOBILE PHONE
Abd Almahmoud et al. ANDROID MAPPING APPLICATION
Gervais Dynamap, a mobile and context-aware pedestrian navigation application
Singh A data collection framework for sensing proximity
Awangku Ali Travel Mobile Application (TraMo)
Jubaier et al. Study of a user-centered design approached to developing a local positioning system for smartphones
Bjørneseth Mobile tourist guide

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110204

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110502

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110722

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120217

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120223

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350