(57)【要約】【課題】使用しないアプリケーションプログラムを圧縮して保存しておくことで、メモリ使用量を少なくし、また、ユーザがアプリケーションプログラムを使用するときには、待ち時間を感じさせることがないようにすること。【解決手段】ユーザがよく使用するアプリケーションと、そのアプリケーションを使用する場所との対応関係を取ったテーブルを用意しておく。そして、ユーザの所在位置を定期的に取得し、その位置がユーザの設定した位置範囲内であれば、ユーザの設定したアプリケーションプログラムを解凍する。【選択図】　　　　図１
2004062798.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムを圧縮して保存しておく圧縮アプリ保存手段と、
移動端末の所在位置を取得する位置情報取得手段と、
前記位置情報取得手段で取得した所在位置を参照して、前記圧縮アプリ保存手段に格納されたアプリケーションプログラムを解凍するかどうかを決定する手段と、
この決定する手段がアプリケーションプログラムを解凍すると決定した場合に、そのアプリケーションプログラムを解凍する解凍手段と、
解凍されたアプリケーションプログラムを記憶する解凍アプリ記憶手段とを、有することを特徴とする移動端末。
【請求項２】
請求項１記載において、
上記アプリケーションプログラムの識別子と、位置範囲のデータとの、対応関係を格納した対応テーブルを備えたことを特徴とする移動端末。
【請求項３】
請求項２記載において、
前記解凍アプリ記憶手段上に解凍されたアプリケーションプログラムが存在しており、かつ、前記位置情報取得手段が取得した移動端末の所在位置が、当該解凍されたアプリケーションプログラムに対応する前記対応テーブルの前記位置範囲から外れていた場合には、当該解凍されたアプリケーションプログラムの使用状況に応じて、前記解凍アプリ記憶手段から当該解凍されたアプリケーションプログラムを消去するかどうかを決定する手段を、有することを特徴とする移動端末。
【請求項４】
請求項２記載において、
前記位置情報取得手段が取得した移動端末の位置情報が、予め定められた所定回数だけ連続して、前記対応テーブルに格納された同一の前記位置範囲内にある場合に、前記解凍手段が、当該位置範囲に対応するアプリケーションプログラムを解凍することを特徴とする移動端末。
【請求項５】
請求項１ないし４の何れか１項に記載において、
前記位置情報取得手段が移動端末の所在位置を取得する時間間隔を変更・設定する手段を有することを特徴とする移動端末。
【請求項６】
請求項１ないし５の何れか１項に記載において、
ユーザがアプリケーションプログラムを解凍して使用したときに、少なくとも、当該アプリケーションプログラムの識別子と、前記位置情報取得手段で取得した移動端末の位置情報とを、対応付けて格納するアプリ使用履歴テーブルを有することを特徴とする移動端末。
【請求項７】
請求項６記載において、
前記アプリ使用履歴テーブルには、前記アプリケーションプログラムの識別子と、前記位置情報と、ユーザが当該アプリケーションプログラムを解凍して使用したときの時刻および／またはユーザが当該アプリケーションプログラムを解凍して使用したときの曜日とを、対応付けて格納することを特徴とする移動端末。
【請求項８】
請求項６または７記載において、
ユーザがアプリケーションプログラムを解凍して使用したときに、前記アプリ使用履歴テーブルの内容を参照して、前記対応テーブルに、少なくとも、アプリケーションプログラムの識別子と位置範囲のデータとを、自動的に登録するかどうかを決定する手段を有することを特徴とする移動端末。
【請求項９】
請求項２記載において、
前記対応テーブルには、前記アプリケーションプログラムの識別子と、前記位置範囲のデータと、使用時間帯および／または使用曜日のデータとが、対応付けて格納されており、
前記位置情報取得手段で取得した移動端末の位置情報が、前記対応テーブルに格納された特定の位置範囲にあり、かつ、その際の時刻および／または曜日が、前記特定の位置範囲と対応付けられた使用時間帯および／または使用曜日に該当する際に、前記特定の位置範囲と対応付けられたアプリケーションプログラムを解凍することを特徴とする移動端末。
【請求項１０】
移動端末の所在位置を取得する手段を有し、取得した移動端末の所在位置が、予め定められた複数回数だけ連続して、予め登録された特定の位置範囲内にある場合に、この予め登録された特定の位置範囲に対応付けられた圧縮状態のアプリケーションプログラムを、解凍するようしたことを特徴とする移動端末の制御方法。
【請求項１１】
請求項１０記載において、
圧縮状態のアプリケーションプログラムを解凍した際に、ユーザにこの旨を表示または音または振動で通知可能にしたことを特徴とする移動端末の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、携帯電話機やＰＤＡ（Ｐｅｒｓｏｎａｌ　Ｄｉｇｉｔａｌ　Ａｓｓｉｓｔａｎｓ）などの移動端末およびその制御方法に係り、特に、ユーザ（移動端末）の位置情報を取得し、予め設定された所定の位置範囲内に入った場合に、予め設定された所定のアプリケーションプログラムを自動的に解凍するように制御する技術に関するものである。
【０００２】
【従来の技術】
最近の携帯電話機は、本来の電話機能の他に、Ｅメールの送受信をしたり、インターネットに接続することができるようになってきている。
【０００３】
また、ゲームを楽しむ、音楽データを取り込んで好きな音楽を聞く、モバイルカメラを使って写真を撮るなど、多彩な機能を持つようになってきている。
【０００４】
さらに、携帯電話機の待ち受け画面に３Ｄ（Ｔｈｒｅｅ　Ｄｉｍｅｎｓｉｏｎ）のキャラクタを表示させるなど、ゲーム以外にも機能が広がっており、そのようなアプリケーションのプログラムサイズが１００キロバイト程度にまで拡大されてきている。
【０００５】
さらにまた、最近の携帯電話機には、ＧＰＳ（Ｇｌｏｂａｌ　Ｐｏｓｉｔｉｏｎｉｎｇ　Ｓｙｓｔｅｍ）衛星からの電波と基地局からの電波を利用し、その携帯電話機の位置を測定することができる機能をもつものが登場している。通常、ＧＰＳを使った位置の測位では、屋外でＧＰＳ衛星を３つ以上捕捉する必要がある。しかし、屋内でも複数の基地局からの情報を元に位置を算出することができる。
【０００６】
特開平１１−２４７９１７号公報では、自分の現在位置を測定し、買い物メモや商品の割引クーポンなど、その位置に見合う情報を表示させる機能がついた装置を開示している。
【０００７】
【発明が解決しようとする課題】
上記したように、携帯電話機には、電話としての機能の他、メールや、インターネット、ゲームなどの機能が搭載され、多機能化が進んでおり、携帯電話機のメモリ使用量が増大している。しかし、携帯電話機は携帯機器であるため、メモリ容量には制限がある。メモリ使用量を抑えるだけならば、普段使用しない機能のアプリケーションプログラムを圧縮して保存しておき、使用するときに解凍してプログラムを実行するという方法が考えられる。だが、この方法では、ユーザがアプリケーションプログラムを使用する度に、解凍する時間を待たなくてはならない。そのため、ユーザに不快感を与え（いらいら感をつのらせ）、さらにユーザに時間的な余裕がない場合は、そのアプリケーションプログラムを使用できない等の問題がある。
【０００８】
【課題を解決するための手段】
本発明では、上記したような課題を解決するために、普段使用しないアプリケーションプログラムを圧縮して保存しておくだけでなく、ユーザ（移動端末）の位置によって自動的に特定のアプリケーションプログラムを解凍させる。このようにすることで、メモリ使用量を抑え、なおかつ、ユーザがアプリケーションを解凍する時間を待つことなく使用することができる。
【０００９】
本発明による移動端末は、例えば具体的には、ユーザの現在の所在位置を測定する位置情報取得手段と、測定した所在位置がユーザの設定した位置範囲に入っているかを判定する位置情報解析手段と、予め設定した位置範囲とその範囲で使用するアプリケーションプログラムとの対応関係を記憶しておく対応テーブルと、圧縮されたアプリケーションプログラムを保存しておく圧縮アプリ保存手段と、アプリケーションプログラムを解凍する解凍手段と、解凍されたアプリケーションプログラムを記憶する解凍アプリ記憶手段とを、具備した構成をとる。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を用いて説明する。
【００１１】
図１は、本発明の一実施形態に係る携帯電話機が、基地局とＧＰＳ衛星からの電波を利用して位置情報を取得し、ユーザの所在位置情報に応じてアプリケーションプログラムを解凍するのに必要な手段を表した構成図である。
【００１２】
本実施形態の携帯電話機１００は、位置情報取得部１０１、位置情報解析部１０２、アプリケーション圧縮部１０３、アプリケーション解凍部１０４、圧縮されたアプリケーションプログラムを保存しておく圧縮アプリ保存部１０７、解凍されたアプリケーションプログラムを記憶する解凍アプリ記憶部１０８、予め設定した位置範囲とその範囲で使用するアプリケーションプログラムとの対応関係を書き替え可能に記憶（登録）しておく対応テーブル１０６などを、含んだものとして構成されている。
【００１３】
位置情報取得部１０１は、基地局１１０、図示せぬロケーションサーバ（ＧＰＳや基地局を使用した位置情報の提供サービスを行うサーバ）、ＧＰＳ（Ｇｌｏｂａｌ　Ｐｏｓｉｔｉｏｎｉｎｇ　Ｓｙｓｔｅｍ）衛星１２０と情報のやり取りを行ない、携帯電話機１００の位置の座標を、緯度・経度で取得する部分である。
【００１４】
対応テーブル１０６は、携帯電話機の位置範囲と、その位置範囲で解凍すべきアプリケーションプログラムとの対応関係を示すテーブルであり、このテーブルを使って解凍するアプリケーションプログラムを決定する。対応テーブル１０６は、図４に示すように、位置名称４０１、位置範囲４０２、アプリケーションプログラムの識別子４０３の項目を持つ。位置範囲４０２には、位置範囲（経度）と位置範囲（緯度）の項目がある。ユーザは、緯度・経度を示す数字を見ただけではそれがどの場所を示すのかわからないので、ユーザがわかりやすいように位置範囲４０２に名前を付ける。それが位置名称４０１である。
【００１５】
例えば、位置範囲（緯度）２３°４５′０５″〜２３°４６′００″、位置範囲（経度）１３３°３５′２５″〜１３３°３６′２０″の位置範囲には、「自宅」という位置名称を付ける。すると、ユーザが携帯電話の表示画面で「自宅」を選択すれば、位置範囲（緯度）２３°４５′０５″〜２３°４６′００″、位置範囲（経度）１３３°３５′２５″〜１３３°３６′２０″の範囲を選択したことと等価になる。これにより、「自宅」で解凍すべきアプリケーションプログラムの変更などがしやすくなる。
【００１６】
位置情報解析部１０２は、位置情報取得部１０１が取得した携帯電話機の所在位置情報と、対応テーブル１０６の内容とを参照し、解凍すべきアプリケーションプログラムがあるのかを解析する。
【００１７】
位置情報取得部１０１の取得した所在位置が、対応テーブル１０６の位置範囲（緯度）と位置範囲（経度）の範囲内に入っていた場合、その位置範囲に対応するアプリケーションプログラムが解凍されていなければ、アプリケーション解凍部１０４に命令を出す。その命令を受け取ったアプリケーション解凍部１０４は、対応するアプリケーションプログラムを圧縮アプリ保存部１０７から取得し、これを解凍する。解凍されたアプリケーションプログラムは、解凍アプリ記憶部１０８に記憶され、そのアプリケーションプログラムはいつでも実行できる状態になる。つまり、ワークエリアとして機能する解凍アプリ記憶部１０８に展開されたアプリケーションプログラムはスタンバイ状態となり、ユーザの適宜キー操作によって、そのアプリケーションプログラムの初期画面が、直ちに携帯電話機のディスプレイ上に呼び出し可能な状態となる。
【００１８】
なお、アプリケーションプログラムがスタンバイ状態となったことをユーザに認知させるために、この旨を知らせる表示出力、または音出力、または振動出力が自動的になされるようにしても良く、この場合には、電話やメールの着信とは異なる認知用の出力形態をとることが望ましい。さらにまた、アプリケーションプログラムがスタンバイ状態となったことをユーザに認知させるモードをとるかどうかを、ユーザの要望や好みに応じて選択設定できるようにしても良い。
【００１９】
位置情報取得部１０１の取得した所在位置が、対応テーブル１０６の位置範囲４０２の範囲内になかった場合、位置情報解析部１０２（あるいは、位置情報解析部１０２からの情報を受け取る図示せぬ上位の判断手段）は、解凍されている全てのアプリケーションプログラムを解凍アプリ記憶部１０８から消去するように、アプリケーション解凍部１０４に命令を出す。ただし、使用中のアプリケーションプログラムがあった場合は、そのアプリケーションプログラムは解凍アプリ記憶部１０８から消去させない（アプリケーションプログラムが使用中であるかどうかの判定は、例えば、ユーザによるキー操作が所定時間の間に全くなかった場合に、使用中でないと判断する）。消去命令を受け取ったアプリケーション解凍部１０４は、対応するアプリケーションプログラムを解凍アプリ記憶部１０８から探し出し、解凍されているアプリケーションプログラムを消去する。なお、解凍アプリ記憶部１０８から消去されたアプリケーションプログラムに対応する圧縮されたアプリケーションプログラムは、圧縮アプリ保存部１０７に保存されている。
【００２０】
アプリケーション圧縮部１０３は、携帯電話機にアプリケーションプログラムがインストールされたときに、そのアプリケーションプログラムを所定形式の圧縮方式で圧縮して、圧縮したアプリケーションプログラムを圧縮アプリ保存部１０７に保存させる。なお、アプリケーションプログラムが携帯電話機にプリインストールされる場合には、アプリケーション圧縮部１０３を介さずに、圧縮されているアプリケーションプログラムを、直接圧縮アプリ記憶部１０７に書き込むことも可能である。
【００２１】
図１に示す携帯電話機を使用するに際して、ユーザは、まず、後述する操作方法により、上記対応テーブル１０６の設定内容をあらかじめ作成しておく。対応テーブル１０６には、図４に示したような、位置名称４０１、位置範囲４０２、及びその位置範囲内で解凍するアプリケーションプログラムの識別子４０３を登録しておく。
【００２２】
図２は、本実施形態の携帯電話機がユーザの所在位置情報を取得し、その位置において解凍すべきアプリケーションプログラムを解凍し、また、解凍されているアプリケーションプログラムのうち消去すべきアプリケーションプログラムを消去する手順の、第１例を示すフローチャートである。
【００２３】
まず、位置情報取得部１０１で、携帯電話機の所在位置情報を取得する（ステップＳ２０１）。次に、対応テーブル１０６を参照し（ステップＳ２０２）、取得した所在位置が含まれる位置範囲が登録されているか否かを調べ（ステップＳ２０３）、登録されている場合はステップＳ２０４に進み、登録されていない場合は、ステップＳ２０６に進む。すなわち、取得した所在位置の緯度が、対応テーブル１０６の位置範囲（緯度範囲）に入っており、かつ、取得した所在位置の経度が対応テーブル１０６の位置範囲（経度範囲）に入っていた場合は、取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていると判断され、そうでない場合は、取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていないと判断される。
【００２４】
取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていた場合は、ステップＳ２０４において、対応テーブル１０６を参照し、取得した所在位置が含まれる位置範囲で解凍すべきアプリケーションプログラムが、解凍済みかどうかを判断する。その結果、解凍済みであった場合は、ステップＳ２０１の処理に戻る。まだ解凍されていなかった場合には、ステップＳ２０５に進んで、そのアプリケーションプログラムを解凍した後、ステップＳ２０１の処理に戻る。すなわち、アプリケーション解凍部１０４により、圧縮アプリ保存部１０８に保存されたアプリケーションプログラムをデコードして、解凍アプリ記憶部１０７に記憶させることにより、そのアプリケーションプログラムをすぐに実行できる状態（スタンバイ状態）にした後、ステップＳ２０１の処理に戻る。
【００２５】
なお、圧縮アプリ保存部１０７は、ＲＯＭのようなユーザが書き込みできない領域に指定することもできるし、書き込みできるＲＡＭ領域に指定することもできる。また、メモリカードのような、外部から抜き差しできるものに指定することもできる。解凍アプリ記憶部は、書き込みできるＲＡＭや、メモリカードに指定することができる。
【００２６】
取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていない場合は、ステップＳ２０６において、解凍済みのアプリケーションプログラムが現在存在するかどうかを調べて、存在する場合にはステップＳ２０７に進み、存在しない場合にはステップＳ２０１の処理に戻る。ステップＳ２０７では、そのアプリケーションプログラムを現在使用中であるかどうかを判断して、使用中の場合にはステップＳ２０１の処理に戻り、使用中でない場合には、ステップＳ２０８で、そのアプリケーションプログラムを解凍アプリ記憶部１０８から消去した後、ステップＳ２０１の処理に戻る。
【００２７】
ところで、上記したように、取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていない場合（ステップＳ２０３でＮｏ判定される場合）というのは、次の２つのケースが考えられる。１つは、ユーザが直前まで登録された位置範囲４０２内にいたが、ユーザが移動したため登録した位置範囲４０２から外れたケース。もう１つは、もともとユーザが登録した位置範囲４０２内にいなかった場合である。
【００２８】
前者の場合は、直前までいた登録された位置範囲に対応するアプリケーションプログラムが解凍されていたはずなので、少なくとも１つのアプリケーションプログラムが解凍状態にある。そこで、解凍されているアプリケーションプログラムがあるかどうかを調べ（ステップＳ２０６）、解凍されているアプリケーションプログラムを消去する。しかし、ユーザがそのアプリケーションプログラムを使用している可能性があるため、そのアプリケーションプログラムが使用中でないことを確認して（ステップＳ２０７）、そのアプリケーションプログラムを消去する（ステップＳ２０８）。
【００２９】
後者の場合は、もともとユーザが登録した位置範囲４０２から外れているので、解凍されているアプリケーションプログラムが１つもないこともある。しかし、解凍されたアプリケーションプログラムをユーザが使用中のまま、ユーザが登録した位置範囲４０２から外れることがある。例えば、位置範囲４０２に「駅」、アプリケーションに「メール」を登録していたとする。ユーザが駅でメールを使用していて、そのまま電車に乗って移動を始めると、メールを使用したまま登録した位置範囲４０２「駅」から外れてしまう。このような場合には、そのアプリケーションプログラムは解凍アプリ記憶部１０８から消去されない。その後、ユーザがそのアプリケーションプログラムの使用を中止すると、ステップＳ２０６、ステップＳ２０７、ステップＳ２０８を通過することで、解凍されているアプリケーションプログラムは解凍アプリ記憶部１０８から消去される。
【００３０】
このように、本実施形態の携帯電話機では、ユーザが対応テーブル１０６に登録した位置範囲４０２内にいないときは、携帯電話機内の使用していない全てのアプリケーションプログラムが圧縮状態になり、ユーザが登録した位置範囲４０２内でのみ、その位置範囲に対応したアプリケーションプログラムが自動的に解凍されることになる。そして、ユーザが対応テーブル１０６に登録した位置範囲から外れると、そのアプリケーションプログラムが使用中でない場合には直ちに、使用中の場合にはそのアプリケーションプログラムの使用が中止され次第、そのアプリケーションプログラムは解凍アプリ記憶部１０８から消去される。
【００３１】
図５は、携帯電話機のＯＳの制御のもとに、圧縮アプリ保存部１０７に圧縮されて格納されたアプリケーションプログラムが、解凍アプリ記憶部１０８に解凍・展開された状態を模式的に示している。
【００３２】
次に、本実施形態の携帯電話機がユーザの所在位置情報を取得し、その位置において解凍すべきアプリケーションプログラムを解凍し、また、解凍されているアプリケーションプログラムのうち消去すべきアプリケーションプログラムを消去する手順の、第２例を説明する。
【００３３】
ユーザが、対応テーブル１０６に登録された位置範囲４０２の境界付近を移動しており、ユーザの所在位置が登録された位置範囲４０２に含まれたり外れたりを、短時間の間に複数回繰り返す可能性がある。この場合、前記した第１例の動作では、アプリケーションプログラムの解凍／消去を複数回繰り返さなければならず、バッテリーの消耗などにつながる。本第２例は、このような無駄な解凍を回避できるようにした例である。
【００３４】
図６は、本第２例の要部の（特徴的な）処理の流れを示すフローチャートであり、図６に示した処理フローは、図２のステップＳ２０１〜ステップＳ２０３までの処理フローに対応しており、図６においては、ステップＳ２０４〜ステップＳ２０８に対応する処理フローは省略してある。つまり、図２のステップＳ２０１〜ステップＳ２０３を、図６の処理フローに置き変えることで、本第２例の動作手順全体を示したフローチャートになる。
【００３５】
図６に示した例では、取得した位置情報が１０回連続して、対応テーブル１０６に登録されている所定の位置範囲内（同一の位置範囲内）にある場合にのみ、登録された所定の同一位置範囲内にユーザがいると判定される。また、取得した位置情報が１０回連続して、対応テーブル１０６に登録されている位置範囲の外である場合にのみ、ユーザは登録された位置範囲内にはいないと判定される。
【００３６】
この判定には、ｃｎｔという変数を使っている。取得した位置情報が含まれる位置範囲が対応テーブル１０６に登録されており、かつ、この位置範囲が前回と同一の場合には、ｃｎｔの値を１増やし、取得した位置情報が含まれる位置範囲が対応テーブル１０６に登録されていなかった場合には、ｃｎｔの値を１減らす。ただし、対応テーブル１０６に登録されていた場合でも、ｃｎｔの値が負だったらｃｎｔの値を１にする。また、対応テーブル１０６に登録されていなかった場合でも、ｃｎｔの値が正だったらｃｎｔの値を−１にする。
【００３７】
これにより、取得した位置情報が含まれる位置範囲が対応テーブル１０６に登録されており、かつ、この位置範囲が前回と同一の場合、あるいは、取得した位置情報が含まれる位置範囲が対応テーブル１０６に登録されていなかった場合に限り、ｃｎｔの絶対値が増えていく。逆に、対応テーブル１０６に登録されている位置範囲の位置情報と、登録されていない位置範囲の位置情報を交互に取得すると、ｃｎｔの絶対値は２を超えては増えていかない。
【００３８】
図６の処理フローでは、ｃｎｔの絶対値が１０になるまでｃｎｔの値を増減させる。ｃｎｔが１０になると、図２のステップＳ２０４に対応する処理に進む。また、ｃｎｔが−１０になると、図２のステップＳ２０６に対応する処理に進む。
【００３９】
例として、ユーザが対応テーブル１０６に登録された位置範囲４０２の境界付近を移動しており、対応テーブル１０６に登録された位置範囲に含まれる位置情報と、対応テーブル１０６に登録された位置範囲に含まれない位置情報とを、交互に取得した場合における、ｃｎｔの値の変化を説明する。
【００４０】
初めはｃｎｔ＝１とする。ステップＳ６０１で位置情報を取得し、ステップＳ６０２で、取得した位置情報が含まれる位置範囲が対応テーブル１０６に登録されており、また、ステップＳ６０３で、この位置範囲が前回と同一の位置範囲であると、ステップＳ６１０に進む。ここでは、ｃｎｔ＝１０ではないので（ステップＳ６１０でＮｏ判定であるので）ステップＳ６１１に進み、ステップＳ６１１ではｃｎｔ＞０なので（ステップＳ６１１でＹｅｓ判定であるので）、ステップＳ６１３でｃｎｔの値が１増えてｃｎｔ＝２となる。したがって、ステップＳ６０１に戻る。そしてここで、取得した位置情報が含まれる位置範囲が、対応テーブル１０６に登録されていないと、今度はステップＳ６０２からステップＳ６２０に進む。ここでは、ｃｎｔ＝−１ではないので（ステップＳ６２０でＮｏ判定であるので）ステップＳ６２１に進み、ステップＳ６２１ではｃｎｔ＜０ではないので（ステップＳ６２１でＮｏ判定であるので）、ステップＳ６２２でｃｎｔ＝−１となる。したがって、ステップＳ６０１に戻る。
【００４１】
このように、対応テーブル１０６に登録された位置範囲に含まれる位置情報と、対応テーブル１０６に登録された位置範囲に含まれない位置情報とを、交互に取得した場合には、ｃｎｔの絶対値は２を超えて増えることが無く、アプリケーションプログラムの解凍や消去を行なう処理には到達しない。すなわち、ｃｎｔの絶対値が１０になるまでアプリケーションプログラムの解凍処理や消去処理には到達せず、したがって、ユーザの所在位置が登録した位置範囲４０２に含まれたり外れたりすることが、短時間の間に複数回繰り返えされても、無駄なアプリケーションプログラムの解凍／消去の繰り返し行うことを回避することができる。
【００４２】
なお、図６に示した例では、ｃｎｔの絶対値が１０になるまでアプリケーションプログラムの解凍処理や消去処理には到達しないようにしたが、解凍処理や消去処理を行なうタイミングを調整するために、ステップＳ６１０を「ｃｎｔ＝　ｍａｘ＿ｎｕｍ？」、ステップＳ６２０を「ｃｎｔ＝−　ｍａｘ＿ｎｕｍ？」として、ｍａｘ＿ｎｕｍの値をユーザが決定できるようにすることも可能である。ｍａｘ＿ｎｕｍを大きくすれば、ユーザが移動している際に、アプリケーションプログラムの解凍処理や消去処理を行なう頻度が低くなり、逆にｍａｘ＿ｎｕｍを小さくすれば解凍処理や消去処理を行う頻度が高くなる。
【００４３】
次に、本実施形態の携帯電話機がユーザの所在位置情報を取得し、その位置において解凍すべきアプリケーションプログラムを解凍し、また、解凍されているアプリケーションプログラムのうち消去すべきアプリケーションプログラムを消去する手順の、第３例を説明する。
【００４４】
常に位置情報を取得していると電池を消耗してしまうため、位置情報を取得する間隔を変更する機能を持たせることも必要である。本第３例は、このような位置情報を取得する間隔を変更する機能を持つ例である。
【００４５】
図７は、本第３例の要部の（特徴的な）処理の流れを示すフローチャートであり、図７に示した処理フローは、位置情報を取得する時間間隔を空けるための処理フローのみを表しており、位置情報を取得してから後の処理フローについては、割愛してある（位置情報を取得してから後の処理フローは、図２の前記第１例、あるいは図６の前記第２例と同様である）。
【００４６】
例えば、図６のステップＳ６０１の処理を行なう前に、図７の本第３例の処理フローを実行する。図６でのステップＳ６１３やステップＳ６２３などのように、ステップＳ６０１に戻る処理を、図７のステップＳ７０１に戻すことにより、この本第３例の動作手順全体を示すフローチャートとなる。
【００４７】
図７に示すように、ステップＳ７０１ではｔｉｍｅの値を１づつ増やし、ステップＳ７０２でｔｉｍｅ＝ｍａｘ＿ｔｉｍｅとなったかどうかを監視し、ｔｉｍｅ＝ｍａｘ＿ｔｉｍｅとなると、ステップＳ７０３でｔｉｍｅの値を０にして、図６のステップＳ６０１に進む。
【００４８】
いま、ステップＳ７０１の処理を１秒に１０００回行なうとすると、位置情報を取得してから、次に位置情報を取得するまでの間隔がｍａｘ＿ｔｉｍｅミリ秒となる。ｍａｘ＿ｔｉｍｅを大きくすれば、位置情報を取得する間隔が長くなり、ｍａｘ＿ｔｉｍｅを小さくすれば、位置情報を取得する間隔が短くなる。ｍａｘ＿ｔｉｍｅは、ユーザが決定できるようにすることも可能である。このユーザによる操作方法については、後述する。
【００４９】
ところで、上述してきた例では、対応テーブル１０６への登録をユーザが行うことを前提としたが、位置範囲とその位置範囲で解凍させるアプリケーションプログラムの識別子を、ユーザがいちいち登録するのは手間がかかるため、自動で登録させる機能を持たせることも考えられる。この自動登録機能の例について、次に説明する。
【００５０】
この自動登録の機能を持つ場合には、ユーザがある決まった場所でいつも同じアプリケーションプログラムを使用するとき、その場所とそのアプリケーションプルグラムの識別子を、自動で対応テーブル１０６に登録する。この自動登録のために、アプリ使用履歴テーブルを用意する。
【００５１】
図９は、ユーザの使用したアプリケーションプログラムと、使用した位置・日時の関係をまとめておく、アプリ使用履歴テーブルの例を示す図である。アプリ使用履歴テーブルには、アプリケーションプログラムの識別子９０１、使用位置９０２、使用日時９０３の項目がある。
【００５２】
図１０は、位置範囲とアプリケーションプログラムの識別子を、自動的に対応テーブル１０６に登録する手順を示すフローチャートである。この図１０の処理フローは、携帯電話機が位置に応じて圧縮されたアプリケーションプログラムを自動解凍する際には実行されず、ユーザがマニュアル操作で、圧縮されたアプリケーションプログラムを解凍して、これを使用するときに実行される。
【００５３】
まず、ユーザが適宜のキー操作によって、圧縮されているアプリケーションプログラムを選択・指定してその使用を指示すると、指定されたアプリケーションプログラムはアプリケーション解凍部１０４によって解凍されて、解凍アプリ記憶部１０８に展開され、この解凍されたアプリケーションプログラムをユーザが使用する。そして、ユーザがアプリケーションプログラムを使用すると、ユーザの使用したアプリケーションプログラムの識別子、その使用位置の情報、その使用日時の情報が、図９に示すようなアプリ使用履歴テーブルに記録される（ステップＳ１００２）。
【００５４】
次に、アプリ使用履歴テーブルの識別子９０１の項目を、最新に書き込まれた項目を除いて順次検索して（ステップＳ１００３）、最新に書き込まれた識別子（ユーザが現在使用しているアプリケーションプログラムの識別子）と同一の識別子の項目であるか否かを判別し（ステップＳ１００４）、同一の識別子であった場合にはステップＳ１００５に進み、同一の識別子でなかった場合にはステップＳ１００９に進む。
【００５５】
ステップＳ１００５では、同一の識別子のアプリケーションプログラムが使用された過去の使用位置９０２と、最新に書き込まれた使用位置（現在の使用位置）９０２とを比較し、過去の使用位置と現在の使用位置との距離が、あらかじめ定められた値ｄより小さいかどうかを判定し、ｄ未満である場合にはステップＳ１００６に進み、そうでない場合にはステップＳ１００３に戻る。ステップＳ１００６では、ｎｕｍ＿ｎｅａｒに１を加えて、ステップＳ１００７に進む。
【００５６】
ステップＳ１００７では、ｎｕｍ＿ｎｅａｒの値があらかじめ定められたｃｏｎｓｔを超えたか否かが判定され、ｎｕｍ＿ｎｅａｒがｃｏｎｓｔを超えた場合にはステップＳ１００８に進み、そうでない場合にはステップＳ１００９に進む。ステップＳ１００８では、当該アプリケーションプログラムの識別子が、対応テーブル１０６のアプリケーション識別子４０３の項目に登録されるとともに、対応テーブル１０６の位置範囲４０２の項目には、所定の条件で算出された位置範囲のデータが登録され、処理を終了する。
【００５７】
また、ステップＳ１００９では、アプリ使用履歴テーブルの検索が終了したか否かが判定され、検索が終了していない場合にはステップＳ１００３に戻る。検索が終了である場合には、ステップＳ１０１０で、ｎｕｍ＿ｎｅａｒの値を０に戻して、処理を終了する。
【００５８】
図１０の自動登録の動作について、補足する。例えば、学校に行く途中に駅でメールを使用し、帰りも同じ駅でメールを使用した場合、行きで使用して登録された使用位置９０２と、帰りに使用して登録された使用位置９０２との距離は、比較的小さい。その距離がｄよりも小さければ、ｎｕｍ＿ｎｅａｒに１が足されて、ｎｕｍ＿ｎｅａｒの値は１となる。他に距離の小さい使用位置９０２がない場合は、ｎｕｍ＿ｎｅａｒは０に戻る。
【００５９】
また、次の日にも同じ駅でメールを使用した場合は、そのときに登録された使用位置９０２と前日に登録された２つの使用位置９０２との距離が小さく、その距離がどちらもｄより小さかった場合、ｎｕｍ＿ｎｅａｒに１が２回足されて、ｎｕｍ＿ｎｅａｒの値は２となる。このように、いつも決まった場所で同じアプリケーションプログラムを使用すると、ｎｕｍ＿ｎｅａｒの値が大きくなる。
【００６０】
さらにｎｕｍ＿ｎｅａｒの値が大きくなり、予め定められたｃｏｎｓｔという値より大きくなると（ステップＳ１００７でＹｅｓ判定されると）、そのアプリケーションプログラムの識別子が対応テーブル１０６のアプリケーション識別子４０３の項目に登録される。また、対応テーブル１０６の位置範囲４０２の項目には、最新にアプリ使用履歴テーブルに登録された使用位置９０２と、その使用位置９０２から距離ｄ未満にある同一識別子の使用位置９０２の全てとにおいて、それぞれ予め定められた半径ｒの円の範囲を演算し、この円を全て含む矩形の範囲を登録する（図１１参照）。
【００６１】
なお、対応テーブル１０６へのアプリケーションプログラムの識別子と位置範囲の自動登録を行った後も、アプリ使用履歴テーブルの登録内容は保持されており、対応テーブル１０６に既に登録されている識別子のアプリケーションプログラムを、ユーザがマニュアル操作で解凍して使用する際にも、図１０の処理フローが実行される。この結果、先に求めて対応テーブル１０６に登録した位置範囲と、今回求められた位置範囲とが、その領域で互いに重なる部分があるも、不一致の場合には、先に求めた位置範囲と今回求めた位置範囲を全て含む矩形の範囲を、新たな位置範囲として対応テーブル１０６に書き替えて、更新登録する。このようにすることによって、アプリケーションプログラムの識別子と対応する位置範囲が拡大されて更新登録されていき、位置範囲として、より確実で、望ましいデータに修正されていくことになる。
【００６２】
次に、本実施形態の携帯電話機がユーザの所在位置情報を取得し、その位置において解凍すべきアプリケーションプログラムを解凍し、また、解凍されているアプリケーションプログラムのうち消去すべきアプリケーションプログラムを消去する手順の、第４例を説明する。
【００６３】
前記した第１例〜第３例では、取得した所在位置が含まれる位置範囲が対応テーブル１０６に登録されていた場合は、時間帯に関係なく、対応テーブル１０６に登録されているその位置範囲に対応する識別子のアプリケーションプログラムを解凍するようにしている。しかし、同じ場所にいても、曜日や時間帯によって、使用するアプリケーションプログラムが異なる場合があり得る。例えば、家では、平日の夜はメールを使用するだけであるが、休日の昼にはウェブを使用する、などのような場合である。そこで、図９に示した前記アプリ使用履歴テーブルの使用日時のデータを、対応テーブル１０６に併せて登録することにより、解凍するアプリケーションプログラムを、位置範囲と時間帯とで区別することができる。また、アプリ使用履歴テーブルに、図示していないが使用曜日のデータも登録するようにし、使用曜日のデータを、対応テーブル１０６に併せて登録することにより、解凍するアプリケーションプログラムを、位置範囲と曜日とで区別することや、位置範囲と時間帯と曜日とで区別することができる。本第４例は、このようなきめ細やかな解凍制御を行うようにした例である。
【００６４】
上記したように、解凍するアプリケーションプログラムを、位置範囲と時間帯とで区別する例について説明する。まず、図１０を利用して、アプリ使用履歴テーブルの内容を、対応テーブル１０６に登録する手順を説明する。この場合、図１０のステップＳ１００５の判定を、「現在位置との距離＜ｄ、かつ、現在時刻との時間差＜ｔであるか？」とする。ここで、ｔは予め定められた定数である。このステップでは、過去に同じアプリケーションプログラムを使用した位置と現在位置との距離がｄ未満であり、かつ、過去に同じアプリケーションプログラムを使用した時刻と現在時刻との差がｔ未満である場合に、ステップＳ１００６に進む。このようにすることで、同じ場所、同じ時間帯に使用するアプリケーションプログラムに関するデータだけを、対応テーブル１０６に登録することができる。その際、図１０のステップＳ１００８での処理で、時間帯のデータも、同時に対応テーブル１０６に登録することは言うまでもない。この時間帯のデータとしては、最新にアプリ使用履歴テーブルに登録された使用日時９０３と、その使用日時９０３から時間ｔ以内にある使用日時９０３の全てから、それぞれ前後予め定められた時間差ｄｔの範囲を求め、アプリケーションを解凍する時間帯として登録する（図１２参照）。
【００６５】
次に、図２を利用して、アプリケーションプログラムを解凍する手順を説明する。この場合、図２のステップＳ２０３を、「取得した位置が含まれている位置範囲が対応テーブル１０６に登録されていて、かつ、その位置範囲に対応して登録されている解凍する時間帯の範囲に、位置を取得した時刻が含まれているか？」とする。これで、アプリケーションを解凍する時間帯に、制限をつけることができる。
【００６６】
次に、解凍するアプリケーションプログラムを、位置範囲と時間帯と曜日とで区別する例について説明する。位置範囲に加えて、時間帯および曜日によって区別する場合は、アプリ使用履歴テーブルと対応テーブル１０６に、それぞれ曜日の項目をさらに付加する。
【００６７】
まず、図１０を利用して、アプリ使用履歴テーブルの内容を、対応テーブル１０６に登録する手順を説明する。この場合には、図１０のステップＳ１００５の判定を、「現在位置との距離＜ｄ、かつ、現在時刻との時間差＜ｔ、かつ、現在の曜日と過去のアプリ使用履歴テーブルの曜日とが一致するか？」とし、これに当てはまる場合は、アプリケーションプログラムの識別子４０３、位置範囲４０２、前記したアプリケーションを解凍する時間帯、および、アプリ使用履歴テーブルの該当する曜日を、対応テーブル１０６にそれぞれ登録する。
【００６８】
次に、図２を利用して、アプリケーションプログラムを解凍する手順を説明する。この場合、図２のステップＳ２０３を、「取得した位置が含まれている位置範囲が対応テーブル１０６に登録されていて、かつ、その位置範囲に対応して登録されている解凍する時間帯の範囲に、位置を取得した時刻が含まれていて、かつ、その位置範囲に対応して登録されている解凍する曜日に、位置を取得した曜日が一致するか？」とすることにより、位置範囲、時間帯、曜日が一致する場合にのみ、アプリケーションプログラムを解凍させるようにすることができる。
【００６９】
続いて、本実施形態の携帯電話機の機能を使用するための操作方法を、図３を用いて説明する。図３は、本実施形態の携帯電話機の画面表示の各例を示す図である。
【００７０】
本発明の機能（位置に応じたアプリケーションプログラムの自動解凍／自動消去機能；以下、本機能と称す）の使用および設定を行うメニュー画面（表示画面３０１）には、「設定」、「新規登録」、「変更」の項目がある。
【００７１】
メニュー画面で「設定」を選択して（表示画面３０１）、表示画面３０２で「ＯＮ」を選択することにより、本機能を使用することができる（表示画面３０３）。また、表示画面３０２で「ＯＦＦ」を選択すれば、本機能の使用が停止される。
【００７２】
本機能を使用するためには、位置範囲（位置情報）と解凍させるアプリケーションプログラムの識別子を、少なくとも登録する。メニュー画面で「新規登録」を選択し（表示画面３１０）、表示画面３１１で「位置情報」を選択する。表示画面３１２にユーザの所在位置が表示されるので、矢印を使って範囲を指定する（表示画面３１２、３１３）。始点を決定したあと、矢印を移動させて終点を決定する。これにより、始点と終点を対角とした矩形が表示され（表示画面３１４）、その矩形の内側が位置範囲４０２として登録される。表示画面３１４で位置範囲を確認して、良ければ「ＯＫ」を押す。表示画面３１５では、選択した位置範囲４０２に名称をつける。
【００７３】
次に、解凍させるアプリケーションを選択する。表示画面３１６で「アプリ」を選択し、表示画面３１７でアプリケーションプログラムの識別子を選択する。最後に、設定（登録）された位置の名称とアプリケーションプログラムの識別子を確認し（表示画面３１８）、良ければ「ＯＫ」を押す。
【００７４】
登録内容を変更する場合は、メニュー画面で「変更」を選択する（表示画面３３０）。表示画面３３１で、登録してある位置名称４０１が表示される。例えば、「自宅」で解凍させるアプリケーションプログラムを変更したい場合は、「自宅」を選択する。表示画面３３２に移り、新しく解凍させたいアプリケーションプログラムの識別子を選択する。そして、表示画面３３３で変更した内容を確認し、良ければ「ＯＫ」を押す。
【００７５】
図８は、前記した動作手順の第２例におけるｍａｘ＿ｎｕｍ、および、前記した動作手順の第３例におけるｍａｘ＿ｔｉｍｅを変更する際の、本実施形態の携帯電話機の画面表示の各例を示す図である。
【００７６】
表示画面８０１で「詳細設定」を選択すると、表示画面８０２に移る。ここで「位置取得時間」を選択すると、表示画面８０３に移る。表示画面８０３で「位置取得時間間隔」を入力することができ、この数字が位置情報を取得する間隔となる。この数字を読み取り、前記したｍａｘ＿ｔｉｍｅを決定する。
【００７７】
例えば、図７のステップＳ７０１からステップＳ７０４の処理を、１秒間にｎ回行なうとする。表示画面８０３で入力された数字をＮ＿ｉｎｐｕｔとすると、ｍａｘ＿ｔｉｍｅをＮ＿ｉｎｐｕｔ×ｎとすれば、位置情報を取得する間隔はＮ＿ｉｎｐｕｔ秒になる。
【００７８】
「詳細設定」の「処理反応」を選択すると（表示画面８０４）、表示画面８０５に移る。この処理反応レベルの値を使って、前記したｍａｘ＿ｎｕｍを決定する。ｍａｘ＿ｎｕｍが大きいほど、アプリケーションプログラムの解凍処理を行なう頻度が低くなるので、この場合を処理反応レベルが低いとする。処理反応レベルとｍａｘ＿ｎｕｍは反比例の関係にあるので、処理反応レベルの数値の逆数を使ってｍａｘ＿ｎｕｍを決定する必要がある。
【００７９】
また、前記した動作手順の第２例、第３例の処理を同時に使用すると、「位置取得時間間隔」の値によって、単位時間に解凍処理を行なう頻度が変わる。
【００８０】
例えば、処理反応レベルの数値をＮ＿ｌｅｂｅｌ、「位置取得時間間隔」をｔ秒、ｍａｘ＿ｎｕｍを１０００／Ｎ＿ｌｅｂｅｌと設定する。この場合、１０００／Ｎ＿ｌｅｂｅｌ×ｔ秒間連続して取得した位置範囲が対応テーブル１０６に登録されているか、もしくは、連続して取得した位置範囲が対応テーブル１０６に登録されていなかった場合、アプリケーションプログラムの解凍処理、もしくはアプリケーションプログラムの消去処理が実行される。「位置取得時間間隔」を１秒、処理反応レベルＮ＿ｌｅｂｅｌを１０とすると、ユーザが登録した位置範囲に１００秒間居続けた場合に、アプリケーションプログラムの解凍処理が行われる。
【００８１】
なお、上述してきた実施の形態の説明では、携帯電話機への適用を例にとったが、本発明はＰＤＡなどの移動端末にも適用可能であることは、言うまでもない。
【００８２】
また、上述してきた実施の形態の説明では、自動解凍する対象をアプリケーションプログラムと記したが、本発明でいうアプリケーションプログラムには、移動端末への機器接続用のインターフェースソフトや、個別応用ソフトを仲介するようなミドルウェア的なソフトが含まれる。
【００８３】
また、上述してきた実施の形態の説明では、アプリケーションプログラムの解凍に際し、アプリケーション圧縮部１０３に保存された圧縮されたアプリケーションプログラムはそのまま維持するようにしているが、アプリケーションプログラムを解凍して解凍アプリ記憶部１０８に記憶させる際に、元の圧縮されたアプリケーションプログラムをアプリケーション圧縮部１０３から消去し、解凍アプリ記憶部１０８からアプリケーションプログラムを消去する際に、解凍されたアプリケーションプログラムをアプリケーション圧縮部１０３により再び圧縮して、圧縮アプリ保存部１０７に保存するようにしてもよい。このようにする際には、アプリケーション圧縮部１０３とアプリケーション解凍部１０４とが使用する圧縮方式は、ｌｚ７７形式などの可逆圧縮方式を用いことが望ましく、これにより、アプリケーションプログラムを解凍、圧縮するたびにデータが変化しないようにすることができる。
【００８４】
なおまた、上述してきた実施の形態の説明では、取得した位置情報に対し解凍対象となるアプリケーションプログラムが複数存在している場合については言及していないが、解凍対象となるものが複数存在する場合には、最優先順位が付与されたアプリケーションプログラムを自動解凍するようにされる。この場合、最優先順位は、ユーザが付与してもよいし、あるいは、過去の解凍回数が最も多いものを最優先するようにしてもよい。
【００８５】
さらにまた、上述してきた実施の形態の説明では、対応テーブル１０６に登録する位置範囲を矩形の領域としたが、位置範囲は、矩形に限るものではなく、任意の形状とすることが可能である。
【００８６】
【発明の効果】
以上説明したように、本発明による移動端末では、使用しないアプリケーションプログラムを圧縮して保存しておくことにより、メモリ使用量を少なくすることができる。また、ユーザがアプリケーションプログラムを使用するときに、待ち時間を感じることなく、スムーズに使うことができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る携帯電話機が、基地局とＧＰＳ衛星からの電波を利用して位置情報を取得し、ユーザの所在位置情報に応じてアプリケーションプログラムを解凍するのに必要な手段を表した構成図である。
【図２】本発明の一実施形態に係る携帯電話機が、ユーザの所在位置情報を取得し、その位置において解凍すべきアプリケーションプログラムを解凍し、また、解凍されているアプリケーションプログラムのうち消去すべきアプリケーションプログラムを消去する動作手順の、第１例を示すフローチャートである。
【図３】本発明の一実施形態に係る携帯電話機における、操作用の画面表示の遷移例を示す説明図である。
【図４】本発明の一実施形態に係る携帯電話機で使用する、対応テーブルの内容例を示す説明図である。
【図５】本発明の一実施形態に係る携帯電話機における、圧縮アプリ保存部に圧縮されて格納されたアプリケーションプログラムが、解凍アプリ記憶部に解凍・展開された状態を模式的に示す説明図である。
【図６】本発明の一実施形態に係る携帯電話機における、動作手順の第２例の要部処理フローを示すフローチャートである。
【図７】本発明の一実施形態に係る携帯電話機における、動作手順の第３例の要部処理フローを示すフローチャートである。
【図８】本発明の一実施形態に係る携帯電話機における、動作手順の第２例、第３例の機能を設定するための、操作用の画面表示の遷移例を示す説明図である。
【図９】本発明の一実施形態に係る携帯電話機で使用する、アプリ使用履歴テーブルの内容例を示す説明図である。
【図１０】本発明の一実施形態に係る携帯電話機における、位置範囲とアプリケーションプログラムの識別子を、自動的に対応テーブルに登録する手順を示すフローチャートである。
【図１１】本発明の一実施形態に係る携帯電話機が、自動的に位置範囲データを対応テーブルに登録する際の位置範囲の例を示した説明図である。
【図１２】本発明の一実施形態に係る携帯電話機が、自動的に時間帯データを対応テーブルに登録する際の時間帯の例を示した説明図である。
【符号の説明】
１００　携帯電話機
１０１　位置情報取得部
１０２　位置情報解析部
１０３　アプリケーション圧縮部
１０４　アプリケーション解凍部
１０６　対応テーブル
１０７　圧縮アプリ保存部
１０８　解凍アプリ記憶部
１１０　基地局
１２０　ＧＰＳ衛星
【図１】
2004062798.tif 000003
【図２】
2004062798.tif 000004
【図３】
2004062798.tif 000005
【図４】
2004062798.tif 000006
【図５】
2004062798.tif 000007
【図６】
2004062798.tif 000008
【図７】
2004062798.tif 000009
【図８】
2004062798.tif 000010
【図９】
2004062798.tif 000011
【図１０】
2004062798.tif 000012
【図１１】
2004062798.tif 000013
【図１２】
2004062798.tif 000014