JP2006286003A - 機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法 - Google Patents

機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法 Download PDF

Info

Publication number
JP2006286003A
JP2006286003A JP2006103285A JP2006103285A JP2006286003A JP 2006286003 A JP2006286003 A JP 2006286003A JP 2006103285 A JP2006103285 A JP 2006103285A JP 2006103285 A JP2006103285 A JP 2006103285A JP 2006286003 A JP2006286003 A JP 2006286003A
Authority
JP
Japan
Prior art keywords
midlet
function
extension
mobile communication
function extension
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.)
Pending
Application number
JP2006103285A
Other languages
English (en)
Inventor
Scott Vigil Geoffrey
スコット ヴィジル ジェフリー
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Publication of JP2006286003A publication Critical patent/JP2006286003A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】現行のMIDletに機能を追加し、効率的に拡張することができる方法を実現することにある。
【解決手段】本発明に係る方法は、MIDletに機能を追加し拡張するための一以上のファイル104が提供される。パッケージ化構成部106はMIDlet機能拡張部108を生成するためにファイル104をパッケージ化するとともに、MIDlet機能拡張部108用の記述子112を生成し、この記述子112に拡張プロパティ114を追加する。この拡張プロパティ114は、MIDlet機能拡張部108をMIDletの拡張として認識し、MIDlet機能拡張部108を容易に見つけ出すものである。
【選択図】図1

Description

この発明は一般的なコンピュータとコンピュータ関連の技術である。とりわけ、機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法に関するものである。
近年、コンピュータ技術は急速に発展し続けている。実際に、コンピュータは、ビジネス、産業、および学術的な試みのほとんど全ての局面で用いられており、コンピュータ技術の進歩に伴い、ビジネスおよび工業の生産性が大いに増大している。また、多くの家庭でもコンピュータが用いられるようになってきている。
今日では、実に多くの種類のコンピュータが用いられている。なお、本明細書において「コンピュータシステム」という用語は、所望の結果を得るために情報処理を行うことのできる装置または装置の組み合わせを示すものとする。そして、このコンピュータシステムとしては、例えば、パーソナルコンピュータ、携帯用コンピュータ、携帯情報端末(PDA)、サーバ、メインフレーム、スーパコンピュータ、ミニコンピュータ、ワークステーション、マイクロコンピュータ、マイクロコントローラなどが挙げられる。
ところで、Java(登録商標)は、あらゆるハードウェアのプラットホームでそのまま実行可能なアプリケーションを作り出すために設計された、オブジェクト指向のプログラミング言語である。このJavaプログラミング言語で記述されたソースコードは、バイトコードにコンパイルされる。そして、このバイトコードは、Java仮想マシン(JVM)で実行される。なお、このJava仮想マシンとは、Javaバイトコードをハードウェア上で利用可能なコードに翻訳するホストハードウェアにおいてネイティブコードで記述したプログラムである。
Java2プラットホーム対応、マイクロ・エディション(J2ME)は、プログラマーが上記Javaプログラミング言語を用いて、携帯電話、携帯情報端末(PDA;Personal Digital Assistance)、ページャなど、組み込み機器用のアプリケーションを開発することを可能にする技術である。なお、本明細書において、これらのような装置を移動通信機器と総称する。
また、モバイル情報デバイスプロファイル(MIDP;Mobile Information Device Profile)は、アーキテクチャ、および、MID用のアプリケーション開発環境を容易に実現させるための、関連するアプリケーションプログラミングインターフェース(API;Application Program Interface)を定義するものである。そして、このMIDP用に作成されたアプリケーションを、MIDletと称する。また、MIDletスイートとは、Javaクラスファイル、およびMIDletの一部として使用可能な、例えば画像のようなコンテンツファイルを集めたものである。また、これらMIDletスイートにおけるファイルは、Javaアーカイブ(JAR)ファイル内に格納可能であり、MIDletスイートは1つのMIDletを含むものであってもよいし、あるいは複数のMIDletを含むものであってもよい。なお、ここで用いられているように、MIDletという用語は、独立型のMIDlet、またはMIDletスイートの一部であるMIDletを指すものである。
アプリケーションのパッケージ化に関しては例えば特許文献1が挙げられる。
ところで、現行のMIDletに機能を付加することが望ましいという状況が望まれる場合がある。この状況を実現する1つの方法としては、追加の機能を有する、新しいバージョンのMIDletを生成することが挙げられる。この追加の機能を手に入れるために、ユーザは新しいバージョンのMIDlet全体をそのままダウンロードすればよい。
また、その他、ソフトウェアの機能の追加または拡張に関する技術として特許文献2〜4が挙げられるが、これらの公知文献は、MIDlet、すなわち固有のJava実行環境におけるアプリケーションの機能の追加に関するものではない。
米国特許第6675382号明細書(1999年6月14日出願) 国際公開第2004/028182号パンフレット(2004年4月1日公開) 米国特許出願公開第2003/0081002号明細書(2003年5月1日公開) 米国特許出願公開第2003/0056194号明細書(2003年3月20日公開)
しかしながら、上記したMIDletのアップデート方法は非効率的であるといった問題がある。より具体的には、この新しいバージョンのMIDletは、旧バージョンのMIDletと同様のファイルをいくつか含んでいる。このため、MIDletのファイルには複数回ダウンロードされるものがあり、新バージョンのMIDletをダウンロードすることは幾分非効率的となる。それゆえ、現行のMIDletに対して付加的な機能を提供するためのシステムおよび方法を改善することによって利点を得ることができる。本発明は上記の問題点に鑑みてなされたものであり、その目的は、現行のMIDletに機能を追加し、効率的に拡張することができる方法、記録媒体、移動通信機器、および機能拡張システムを実現することにある。
本発明に係る方法は、上記した課題を解決するために、1以上のMIDletスイート、および1以上のダウンロード用MIDlet記述子を提供するサーバシステムにおいて、現行のMIDletに機能を追加し拡張する方法であって、MIDletに機能を追加し拡張するための、1以上のファイルを提供するステップと、MIDlet機能拡張部を生成するように上記1以上のファイルをパッケージ化するステップと、上記MIDlet機能拡張部用の記述子を生成するステップと、少なくとも1つの拡張プロパティを上記記述子に追加するステップとを含み、該少なくとも1つの拡張プロパティが、上記MIDlet機能拡張部を上記MIDletに対する拡張であると認識し、該MIDlet機能拡張部の発見を容易としており、さらに、上記記述子をMIDlet機能拡張部に関連付けるステップを含むことを特徴とする。
上記した方法によると、サーバシステムは、MIDlet機能拡張部を生成するための1以上のファイルをパッケージ化するステップを含むため、MIDletの機能を拡張させるためのファイルを纏め、MIDlet機能拡張部とすることができる。このため、MIDlet機能拡張部のみを単独で扱うことができる。
また、このMIDlet機能拡張部用の記述子を生成し拡張プロパティを追加させることができるため、この記述子によってMIDlet機能拡張部を管理することができる。
このように、本発明に係る方法では、MIDlet機能拡張部のみを他のファイル等から分離して扱うことができ、また、このMIDlet機能拡張部が記述子により管理することができるため、MIDlet機能拡張部のみを独立して提供することができる。
したがって、MIDletを新たな機能が追加された新しいバージョンに拡張する場合
、サーバシステムがMIDlet機能拡張部のみを提供することができ、例えば、新バージョンのMIDlet全体を、そのままを提供する構成と比較して、MIDletの拡張を効率的に行うことができる。
よって、本発明に係る方法は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
また、本発明に係る方法は、上記した方法において、上記少なくとも1つの拡張プロパティは、拡張されたMIDletの名前を識別する名前プロパティと、拡張されたMIDletのベンダを識別するベンダプロパティと、拡張されたMIDletのバージョンを識別するバージョンプロパティと、を有することが好ましい。
上記拡張プロパティが、名前プロパティ、ベンダプロパティ、およびバーションプロパティを有するため、この拡張プロパティを参照することで、機能拡張されたMIDletの名前、ベンダ、バージョンを識別することができる。
また、本発明に係る方法は、上記した方法において、上記少なくとも1つの拡張プロパティは、拡張識別子を有してもよい。
上記方法によると、拡張プロパティが拡張識別子を有しているため、該拡張識別子を参照することにより、MIDlet機能拡張部を上記MIDletに対する拡張であると認識し、該MIDlet機能拡張部の発見を容易とすることができる。
また、本発明に係る方法は、上記した方法において、移動通信機器により上記記述子が発見されるステップをさらに含むことが好ましい。
また、本発明に係る方法は、上記した方法において、上記記述子を移動通信機器に転送する旨の要求を、該移動通信機器から受信するステップと、上記要求に対する応答として、上記記述子を上記移動通信機器に転送するステップと、を含んでいてもよい。
また、本発明に係る方法は、上記した方法において、上記MIDlet機能拡張部を上記移動通信機器に転送する旨の要求を、該移動通信機器から受信するステップと、上記要求に対する応答として、上記MIDlet機能拡張部を上記移動通信機器に転送するステップと、を含んでいることが好ましい。
また、本発明に係る方法は、上記した課題を解決するために、移動通信機器において、現行のMIDletに機能を追加し拡張する方法であって、サーバからMIDlet機能拡張部用の記述子を受信するステップを含み、該MIDlet機能拡張部は、MIDletに機能を追加し拡張するための、1つ以上のファイルを有しており、さらに、上記記述子からの情報をユーザに提供するステップと、ユーザから、上記MIDlet機能拡張部をダウンロードする旨のダウンロード要求を受信するステップと、上記ダウンロード要求に対する応答として、サーバに対して、上記MIDlet機能拡張部を移動通信機器に転送する旨の要求を送信するステップと、上記MIDletのコピーを受信することなく、上記MIDlet機能拡張部をサーバから受信するステップと、上記MIDlet機能拡張部を当該移動通信機器にインストールするステップと、を含むことを特徴とする。
上記方法によると、サーバから移動通信機器が記述子を受信するステップを含むため、移動通信機器は、MIDletを拡張する1つ以上のファイルを有するMIDlet機能拡張部に関する情報を得ることができる。
また、記述子からの情報をユーザに提供するステップを含むため、移動通信機器のユーザは、上記MIDlet機能拡張部に関する情報を把握することができ、該該MIDlet機能拡張部のサーバからの取得の要否を判定することができる。
また、ユーザからのダウンロード要求に応じて、MIDlet全体のコピーを受信することなく、MIDlet機能拡張部をサーバから受信することができる。すなわち、本発明に係る方法は、ユーザが所望するMIDlet機能拡張部のみをサーバから受信することができる。このため、移動通信機器がインストールしているMIDletを新たな機能が追加された新しいバージョンに拡張する場合、追加された機能を含むMIDlet全体をそのままダウンロードする構成と比較して、受信するデータ量を低減させることができる。よって、本発明に係る方法は、移動通信機器において、機能を追加するように現行のMIDletを効率的に拡張することができるという効果を奏する。
また、本発明に係る方法は、上記した方法において、上記MIDlet機能拡張部のインストールに応じて、上記MIDletに関連付けられた、システムレベルの拡張プロパティをアップデートするステップをさらに含んでいてもよい。
上記方法によると、上記MIDlet機能拡張部のインストールに応じて、上記MIDletに関連付けられた、システムレベルの拡張プロパティをアップデートすることができるため、拡張プロパティをMIDlet機能拡張部のインストール後のMIDletに対応するものとすることができる。
また、本発明に係る方法は、上記した方法において、ユーザから、上記MIDlet機能拡張部をアンインストールする旨の、アンインストール要求を受信するステップと、上記アンインストール要求に対して、上記MIDletをアンインストールすることなく、上記MIDlet機能拡張部を、当該移動通信機器からアンインストールするステップと、を含むことが好ましい。
上記方法によると、上記MIDletをアンインストールすることなく、上記MIDlet機能拡張部を、当該移動通信機器からアンインストールすることができるため、MIDletの初期化を効率的に行うことができる。
また、本発明に係る方法は、上記した方法において、上記MIDlet機能拡張部のアンインストールに応じて、上記MIDletに関連付けられた、システムレベルの拡張プロパティをアップデートするステップをさらに含むことが好ましい。
また、本発明に係る方法は、上記した課題を解決するために、移動通信機器において、現行のMIDletに機能を追加し拡張する方法であって、ユーザからMIDletを呼び出す旨の要求を受信するステップと、この要求に応じて上記MIDletを呼び出すステップと、当該移動通信機器に、MIDletに機能を追加し拡張するためのMIDlet機能拡張部をインストールすることを決定するステップと、上記MIDlet機能拡張部を発見するステップと、上記MIDlet機能拡張部を呼び出すステップと、を含むことを特徴とする。
上記方法によると、移動通信機器は、自装置にインストールしているMIDletと、発見したMIDlet機能拡張部とをそれぞれ呼び出し、該MIDletに該MIDlet機能拡張部をインストールすることを決定することができる。
したがって、本発明に係る方法は、MIDletに対してMIDlet機能拡張部を効率よくインストールすることができる。
また、本発明に係る方法は、上記した方法において、上記MIDletと上記MIDlet機能拡張部とをリンクするステップをさらに含んでいてもよい。
上記方法によると、上記MIDletと上記MIDlet機能拡張部とをリンクさせるため、該MIDletと該MIDlet機能拡張部とは、例えば互いのクラス、コンテンツにアクセスできる。
また、本発明に係る方法は、上記した方法において、上記MIDletに関連付けられたシステムレベルの拡張プロパティの問い合わせを行うステップを含む、上記MIDlet機能拡張部を当該移動通信機器にインストールすることを決定するステップをさらに含むことが好ましい。
また、本発明に係る方法は、上記した方法において、上記MIDlet機能拡張部に関連付けられた記述子において拡張プロパティを問い合わせるステップを含む、該MIDlet機能拡張部を発見するステップをさらに有してもよい。
また、本発明に係る移動通信機器は、上記した課題を解決するために、現行のMIDletに機能を追加し拡張するための方法を実行するように構成された移動通信機器であって、プロセッサと、上記プロセッサと電気的に通信しているメモリとを備え、該メモリ内には命令が記憶されており、上記命令が、MIDletを呼び出す旨のユーザからの要求を受信するステップと、この要求に応じて、上記MIDletを呼び出すステップと、MIDletに機能を追加し拡張するためのMIDlet機能拡張部を当該移動通信機器にインストールすることを決定するステップと、さらに上記MIDlet機能拡張部を発見するステップと、上記MIDlet機能拡張部を呼び出すステップと、を含む方法を実行可能とすることを特徴とする。
したがって、本発明に係る移動通信機器は、現行のMIDletに対してMIDlet機能拡張部のみをインストールすることができるため、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る記録媒体は、上記した課題を解決するために、現行のMIDletに機能を追加し拡張する方法を実施するための、実行可能な命令を含むコンピュータで読み取り可能な記録媒体であって、上記方法が、MIDletを呼び出す旨のユーザからの要求を受信するステップと、この要求に対する応答としてMIDletを呼び出すステップと、移動通信機器に、MIDletに機能を追加し拡張するためのMIDlet機能拡張部をインストールすることを決定するステップと、上記MIDlet機能拡張部を発見するステップと、上記MIDlet機能拡張部を呼び出すステップと、を含むことを特徴とする。
また、本発明に係る移動通信機器は、上記した課題を解決するために、MIDletに機能を追加し拡張するための1つ以上のファイルであるMIDlet機能拡張部を取得する取得手段と、上記取得手段により取得したMIDlet機能拡張部を、自装置においてインストールするインストール手段と、を備えることを特徴とする。
上記構成によると取得手段およびインストール手段を備えているため、MIDletを拡張するために、MIDlet機能拡張部を取得し自装置にインストールすることができる。このように、本発明に係る移動通信機器は、機能を追加するようにMIDletを拡張するために、MIDlet機能拡張部のみを取得する構成であるため、例えば、機能が追加された新バージョンのMIDlet全体をそのままダウンロードする構成と比較して、MIDletの拡張を効率的に行うことができる。
したがって、本発明に係る移動通信機器は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
また、本発明に係る移動通信機器は、上記した構成において、上記MIDlet機能拡張部に関する情報である機能拡張部情報を含む記述子を取得する記述子取得手段と、上記記述子取得手段によって取得された記述子から上記機能拡張部情報を抽出し出力する出力手段と、上記出力手段によって出力された機能拡張部情報に応じて、ユーザから、該機能拡張部情報に対応するMIDlet機能拡張部のダウンロード指示を受け付けた場合、上記取得手段が上記記述子取得手段によって取得された記述子に対応するMIDlet機能拡張部を取得するように構成されていてもよい。
また、本発明に係る移動通信機器は、上記した構成において、ユーザから、MIDlet機能拡張部をアンインストールする旨の要求を受け付けた場合、上記MIDlet機能拡張部に対応する記述子に基づき、インストールされているMIDletから上記MIDlet機能拡張部のみをアンインストールするアンインストール手段を備えるように構成されていてもよい。
本発明に係る機能拡張システムは、上記した課題を解決するために、上記移動通信機器と、上記機能拡張部を保持しており、上記移動通信機器からのMIDlet機能拡張部の送信要求に応じて該MIDlet機能拡張部を送信する送信手段を有するサーバシステムと、を備えることを特徴とする。
したがって、本発明に係る機能拡張システムは、移動通信機器は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る方法は、以上のように、1以上のMIDletスイート、および1以上のダウンロード用MIDlet記述子を提供するサーバシステムにおいて、現行のMIDletに機能を追加し拡張する方法であって、MIDletに機能を追加し拡張するための、1以上のファイルを提供するステップと、MIDlet機能拡張部を生成するように上記1以上のファイルをパッケージ化するステップと、上記MIDlet機能拡張部用の記述子を生成するステップと、少なくとも1つの拡張プロパティを上記記述子に追加するステップとを含み、該少なくとも1つの拡張プロパティが、上記MIDlet機能拡張部を上記MIDletに対する拡張であると認識し、該MIDlet機能拡張部の発見を容易としており、さらに、上記記述子をMIDlet機能拡張部に関連付けるステップを含むことを特徴とする。
よって、本発明に係る方法は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る方法は、以上のように、移動通信機器において、現行のMIDletに機能を追加し拡張する方法であって、サーバからMIDlet機能拡張部用の記述子を受信するステップを含み、該MIDlet機能拡張部は、MIDletに機能を追加し拡張するための、1つ以上のファイルを有しており、さらに、上記記述子からの情報をユーザに提供するステップと、ユーザから、上記MIDlet機能拡張部をダウンロードする旨のダウンロード要求を受信するステップと、上記ダウンロード要求に対する応答として、サーバに対して、上記MIDlet機能拡張部を移動通信機器に転送する旨の要求を送信するステップと、上記MIDletのコピーを受信することなく、上記MIDlet機能拡張部をサーバから受信するステップと、上記MIDlet機能拡張部を当該移動通信機器にインストールするステップと、を含むことを特徴とする。
よって、本発明に係る方法は、移動通信機器において、機能を追加するように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る方法は、以上のように、現行のMIDletに機能を追加し拡張する方法であって、ユーザからMIDletを呼び出す旨の要求を受信するステップと、この要求に応じて上記MIDletを呼び出すステップと、当該移動通信機器に、MIDletに機能を追加し拡張するためのMIDlet機能拡張部をインストールすることを決定するステップと、上記MIDlet機能拡張部を発見するステップと、上記MIDlet機能拡張部を呼び出すステップと、を含むことを特徴とする。
したがって、本発明に係る方法は、MIDletに対してMIDlet機能拡張部を効率よくインストールすることができる。
本発明に係る移動通信機器は、以上のように、本発明に係る移動通信機器は、上記した課題を解決するために、現行のMIDletに機能を追加し拡張するための方法を実行するように構成された移動通信機器であって、プロセッサと、上記プロセッサと電気的に通信しているメモリとを備え、該メモリ内には命令が記憶されており、上記命令が、MIDletを呼び出す旨のユーザからの要求を受信するステップと、この要求に応じて、上記MIDletを呼び出すステップと、MIDletに機能を追加し拡張するためのMIDlet機能拡張部を当該移動通信機器にインストールすることを決定するステップと、さらに上記MIDlet機能拡張部を発見するステップと、上記MIDlet機能拡張部を呼び出すステップと、を含む方法を実行可能とすることを特徴とする。
したがって、本発明に係る移動通信機器は、現行のMIDletに対してMIDlet機能拡張部のみをインストールすることができるため、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る移動通信機器は、以上のように、MIDletに機能を追加し拡張するための1つ以上のファイルであるMIDlet機能拡張部を取得する取得手段と、上記取得手段により取得したMIDlet機能拡張部を、自装置においてインストールするインストール手段と、を備えることを特徴とする。
したがって、本発明に係る移動通信機器は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明に係る機能拡張システムは、以上のように、上記移動通信機器と、上記機能拡張部を保持しており、上記移動通信機器からのMIDlet機能拡張部の送信要求に応じて該MIDlet機能拡張部を送信する送信手段を有するサーバシステムと、を備えることを特徴とする。
したがって、本発明に係る機能拡張システムは、移動通信機器は、機能を追加できるように現行のMIDletを効率的に拡張することができるという効果を奏する。
本発明の実施形態に係る、アプリケーションに機能を追加し拡張するためのシステムおよびその方法の実施例を以下に説明する。なお、本発明に係る実施形態は、付属図面(図1〜図9)を伴った以下の記述と請求項とによってより明らかにされるであろう。また、これらの図面は単に実施形態の一例を示しているだけであり、本発明の範囲を限定するものではない。つまり付属図面は、本発明の実施形態の一例をさらに具体的かつ詳細に説明するものである。
現行のMIDletに機能を追加し、拡張するためのシステムおよび方法について説明する。本実施の形態に係る方法は、ダウンロードのための1つ以上のMIDletスイートとMIDlet記述子を提供するサーバシステムとによって実現される。そして、MIDletに機能を追加し、拡張するための、1つ以上のファイルが提供される。また、パッケージ化構成部は、MIDlet機能拡張部を形成するために1つ以上のファイルをパッケージする。さらにまた、パッケージ化構成部は、MIDlet機能拡張部用の記述子も形成する。
また、この記述子には、少なくとも1つの拡張プロパティ(extension property)が追加される。なお、この少なくとも1つの拡張プロパティは、MIDletに対する拡張部としてMIDlet機能拡張部を識別し、このMIDlet機能拡張部の発見を容易とするものである。拡張プロパティの例としては、機能拡張されたMIDletの名前を識別する、名前プロパティが挙げられる。また、機能拡張されたMIDletのベンダを識別する、ベンダプロパティが挙げられる。さらにまた、機能拡張されたMIDletのバージョンを識別する、バージョンプロパティがある。なお、この少なくとも1つの拡張プロパティは、拡張識別子を含んでおり、また、上記記述子は、MIDlet機能拡張部と関連付けられている。
また、このサーバシステムでは、移動通信機器(MID)により上記記述子が発見できるようになっている。すなわち、サーバシステムは、移動通信機器(MID)から、上記記述子を該移動通信機器(MID)に転送する旨の要求を受信する。この要求に応じて、サーバシステムは、この記述子を移動通信機器(MID)に転送する。また、サーバシステムは、MIDlet機能拡張部を上記移動通信機器(MID)に転送する旨の要求を、該移動通信機器(MID)から受信する。そして、この要求に応じて、サーバシステムは、MIDlet機能拡張部を移動通信機器(MID)に転送する。
なお、本発明に係る方法は、下記に示す方法であるとも言える。すなわち、モバイル情報デバイスプロファイルを実行するサーバシステム102によって実施される方法である。この方法では、現行のMIDletに機能を追加し拡張するための一以上のファイル104が提供される。このファイル104は、Javaクラスファイル、コンテンツ(例えば、画像)などを含む。パッケージ化構成部106はMIDlet機能拡張部108を生成するためにファイル104をパッケージ化するとともに、MIDlet機能拡張部108用の記述子112を生成し、この記述子112に拡張プロパティ114を追加する。この拡張プロパティ114は、MIDlet機能拡張部108をMIDletの拡張として認識し、MIDlet機能拡張部108を容易に見つけ出すものである。この記述子112はMIDlet機能拡張部108に関連付けられている。
また、上述した本実施の形態に係る方法を実施するための構成を有するサーバシステムについて記載する。このサーバシステムは、プロセッサ、およびこのプロセッサと電気的に通信しているメモリとを備えている。そして、このメモリ内には命令が記憶されている。そして、この命令によって、上記した本実施の形態に係る方法を実行可能とする。また、上述した本実施の形態に係る方法を実施するための実行可能な命令を格納するコンピュータで読み取り可能な記録媒体もまた開示する。
また、本発明の別の実施形態に係る、MIDletに機能を追加し拡張するための方法は、移動通信機器(MID)によって実行できるものである。すなわち、移動通信機器(MID)は、サーバからMIDlet機能拡張部用の記述子を受信する。なお、このMIDlet機能拡張部には、MIDletに機能を追加し拡張するための複数ファイルが含まれている。また、上記記述子からの情報は、ユーザに提供される。アプリケーションマネージャは、ユーザからMIDlet機能拡張部をダウンロードする旨のダウンロード要求を受信する。このダウンロード要求に応じて、アプリケーションマネージャは、MIDlet機能拡張部を、移動通信機器(MID)に転送する旨の要求をサーバに送信する。サーバがこの要求を満たすと、MIDletの余分なコピーを受信することなく、移動通信機器(MID)がMIDlet機能拡張部をサーバから受信する。そして、インストーラが、移動通信機器(MID)においてMIDlet機能拡張部をインストールする。また、このアプリケーションマネージャは、MIDlet機能拡張部のインストールに応じて、MIDletと関連付けられた、システムレベルでの拡張プロパティをアップデートする。
またある時点において、アプリケーションマネージャは、MIDlet機能拡張部をアンインストールする旨のアンインストール要求をユーザから受信する。このアンインストール要求に応じて、アプリケーションマネージャは、MIDletをアンインストールすることなくMIDlet機能拡張部を、移動通信機器(MID)においてアンインストールする。また、MIDletに関連付けられた、システムレベルの拡張プロパティも、MIDlet機能拡張部のアンインストールに応じて、アップデートされる。
さらにまた、本発明の別の実施形態に係る、MIDletに機能を追加し拡張する方法について記述する。この方法は、移動通信機器(MID)によって実行されるものである。すなわち、移動通信機器(MID)は、ユーザから、MIDletを呼び出す旨の要求を受信する。この要求に応じて、移動通信機器(MID)が有するアプリケーションマネージャがこのMIDletを呼び出す。
そして、移動通信機器(MID)は、当該移動通信機器(MID)にMIDlet機能拡張部をインストールすることを決定する。なお、いくつかの実施例では、このステップにおいて、上記MIDletに関連付けられたシステムレベルの拡張プロパティの問い合わせを含んでいてもよい。そして、アプリケーションマネージャは、MIDlet機能拡張部を発見する。なお、このステップにおいて、MIDlet機能拡張部に関連付けられた記述子にて、拡張プロパティの問い合わせを行う。そして、このアプリケーションマネージャは、MIDlet機能拡張部を呼び出す。なお、このMIDletとMIDlet機能拡張部とは、互いのクラス(class)、コンテンツ(content files)にアクセスできるようにリンクしている。
また、上記に述べた、一つ以上の実施の形態に係る方法を実施するように構成された移動通信機器(MID)についても開示する。すなわち、上記移動通信機器(MID)は、プロセッサ、およびこのプロセッサと電気的に通信しているメモリとを備えている。そして、このメモリ内には命令が記憶されている。そして、この命令によって、上記した1つ以上の本実施の形態に係る方法を実行可能とする。また、上述した1つ以上の本実施の形態に係る方法を実施するための実行可能な命令を格納するコンピュータで読み取り可能な記録媒体もまた開示する。
ここで、本発明に係る様々な実施形態について、図面を参照して説明する。なお、図面において、類似した参照符号は、同一のまたは機能的に類似した構成要素を示すものとする。また、概略的に記述され、これら図面によって示されているように、本発明に係る実施形態は、多種多様な構成で配置し設定することができる。したがって、図にて示すように、以下において詳述する本発明に係るいくつかの典型的な実施形態は、請求の範囲に記載されている本発明の範囲を限定することを意図したものではなく、単に本発明に係る実施形態を代表したものである。
なお、上記「典型的な」という用語は、ここでは単に「例、事例、説明となる」ことを意味しているだけであって、ここで「典型的な」ものとして説明されている実施形態は、必ずしも他の実施形態よりも好ましい、あるいは優れているものであると解釈されるべきではない。また、実施形態の様々な特徴が図中に示されているが、この図面は特に示唆されない限り、必ずしも縮尺どおりではない。
ここで開示された実施形態の多くの特性は、コンピュータソフトウェア、コンピュータのハードウェア、またはそれら両方の組み合わせとして実現できるものである。このようなソフトウェアとハードウェアとの互換性をはっきりと図示するために、概して、機能性の観点から、様々な構成部材を示している。このような機能性がハードウェアとして実現されるかソフトウェアとして実現されるかは、特定のアプリケーションおよびシステム全体により強いられた設計制約に依存するものである。また、当業者は各特定のアプリケーションごとに応じた、様々な方法で記述した上記機能性を実施することができるが、そのような実施の決定は、本発明の範囲から逸脱するものであると解釈されるべきではない。
上述した機能性をコンピュータソフトウェアとして実現する場合、このソフトウェアは、記憶装置に格納されている、および/または電気信号としてシステムバスまたはネットワークを介して伝送される、あらゆる種類のコンピュータへの命令、あるいはコンピュータ実行コードを含むものである。また、ここに記述した構成部材に関連した機能性を実現するためのソフトウェアは、1つの命令または多数の命令を含んでおり、また、様々な異なる命令セグメントを介し、異なるプログラム間で、およびいくつかの記憶装置にわたって配信される。
上述したように、上記モバイル情報デバイスプロファイル(MIDP)は、アーキテクチャ、ならびに携帯電話、携帯情報端末(PDA)、ページャなどのような移動通信機器(MID)用のアプリケーション開発環境を容易に実現させる、関連するアプリケーションプログラミングインターフェース(API)を規定するものである。そして、このMIDP用に記述されたアプリケーションを、MIDletと称する。なお、図1では、MIDletに機能を追加し拡張するための、本実施の形態に係るシステム100における構成部材を示す。このシステム100は、1つ以上のMIDletスイートおよびダウンロード用の1つ以上のMIDlet記述子を提供するサーバシステム102を備えている。
また、アプリケーション開発者は、現行のMIDlet(図1では不図示)に機能を追加し拡張するための、1つ以上のファイル104を作成することができる。例えば、このファイル104によって、現行のゲーム対する追加レベルを提供することができる。なお、このファイル104は、Javaクラスファイルや、例えば画像のようなコンテンツファイルなどを含んでいてもよい。
パッケージ化構成部106は、MIDlet機能拡張部108を作成するために、ファイル104をパッケージ化するものである。いくつかの実施例では、このパッケージ化構成部106は、Javaアーカイブツール(Java Achieve Tool)であってもよく、ファイル104をJAR(Java archive)ファイルとともにパッケージ化する。
また、MIDPの仕様に応じて、パッケージ化構成部106は、記述子を、MIDによるダウンロードに関して利用可能な各MIDlet(またはMIDletスイート)用に生成する。この記述子は、MIDletに関連付けられているが、該MIDletからは分離されたファイルである。なお、このMIDlet用の記述子は、たとえばMIDletの名前、MIDletのサイズなど、該MIDletに関する情報を含んでいる。
また、図示した実施形態では、パッケージ化構成部106は、MIDlet機能拡張部108用の記述子112を生成する。なお、この記述子112は、MIDlet機能拡張部108に関連付けられ、かつ該MIDlet機能拡張部108からは分離されたファイルである。また、記述子112は、MIDlet機能拡張部108に関する情報を含んでいる。とりわけ、記述子112は、1以上の標準的なプロパティ113や、拡張プロパティ114などを含む様々なプロパティを有している。なお、この標準的なプロパティ113は、MIDPの仕様において、すでに規定されているプロパティである。それに対して、拡張プロパティ114は、MIDPの仕様において、規定されているものではない。つまり、この拡張プロパティ114は、現行のMIDletを拡張し、容易にMIDlet機能拡張部108を発見することができるように、該MIDlet機能拡張部108を識別するものである。
図2では、本実施の形態に係る、MIDlet機能拡張部108用の記述子212を示している。この記述子212は、すでにMIDPの仕様によって規定されている様々な標準的なプロパティ213を含んでいる。更に、この記述子212には、1以上の拡張プロパティ214があり、この拡張プロパティ214には名前プロパティ214a、ベンダプロパティ214b、バージョンプロパティ214cなどがある。
ネームプロパティ214aには、機能拡張されたMIDletの名前を識別する名前情報216aを含んでいる。なお、いくつかの実施例では、この名前情報216aを、「MIDlet−Extends−Name」と設定するものとする。
また、ベンダプロパティ214bには、機能拡張されたMIDletのベンダを識別する、ベンダ情報216bを含んでいる。なお、いくつかの実施例では、このベンダ情報216bを、「MIDlet−Extends−Vendor」と設定するものとする。
また、バージョンプロパティ214cには、機能拡張されたMIDletのバージョンを識別する、バージョン情報216cを含んでいる。なお、いくつかの実施例では、バージョン情報216cを「MIDlet−Extends−Version」と設定する。
また、上記記述子212には他の拡張プロパティ214dも含まれる。なお、これらの他の拡張プロパティ214dは、オリジナルのMIDletが機能拡張を認識し、クラスファイルに対するエントリーポイントを得るために、オリジナルのMIDletによって定義される。そして、この拡張プロパティ214dにより、拡張対象を発見し、インスタンス化することができる。
図示する実施形態では、それぞれの拡張プロパティ214は拡張識別子218を含んでいる。上記MIDPのAPIは、MIDletスイート若しくはJADからプロパティを抽出することが可能であり、(プロパティ名)がSystem.getPropertyという関数を提供する。また、この拡張識別子218は、MIDlet機能拡張部からプロパティを抽出することを可能とする。なお、この拡張識別子218は、「\Extension−<n>\」と設定されており、ここで「<n>」は、機能拡張部の数(たとえば、<n>は最初の機能拡張部では1となり、続く機能拡張部ごとに増加する)である。例えば、プロパティ「\Extension−1\MIDlet−Name」は、MIDletに対する最初の機能拡張部に関する名前を示している。
一度、MIDlet機能拡張部と、それに付随する記述子とが作成されると、MIDは、記述子とMIDlet機能拡張部とをMIDPサーバシステムから発見し、ダウンロードすることが可能となる。なお、図3は、いくつかの実施例において、この機能を実現するために用いられる様々な構成部材を示す図である。
図3に示すシステム300では、MIDPサーバシステム302と電気的に通信している、移動通信機器(MID)320を備える構成である。そして、このMID320は、アプリケーションマネージャ322を備えている。いくつかの実施例では、このアプリケーションマネージャ322は、Javaアプリケーションマネージャ(Java Application Manager:JAM)であってもよい。なお、MIDPの仕様では、アプリケーションマネージャ322を、アプリケーションマネージャソフトウェア(Application Management Software;AMS)と称する場合がある。
上記アプリケーションマネージャ322は、MIDletのダウンロードおよび寿命(ライフサイクル)を管理するように構成されている。本実施の形態において、MIDlet342に対する機能拡張部308が、MIDPサーバ302からのダウンロード用に利用可能となると、上記アプリケーションマネージャ322は、MIDlet機能拡張部308のダウンロードと寿命とを管理する。
さらに具体的にいうと、ある時点で、アプリケーションマネージャ322は、MID320に対して、MIDlet機能拡張部308用の記述子312を転送する旨の要求324をMIDPサーバシステム302に送信する。なお、この要求324は、複数の記述子をMID320に転送する旨の一般的な要求として含まれるものである。例えば、いくつかの実施例では、アプリケーションマネージャ322は、MIDPサーバシステム302に対して、MID320で利用可能となる、いくつかの新しい記述子を転送するように定期的に要求している。
この要求324に応じて、MIDPサーバシステム302が備える、リクエストハンドラ334は、記述子312をMID320に転送する。そして、MID320では、アプリケーションマネージャ322が、リクエストハンドラ334から記述子312を受信すると、該記述子312からの情報328をMID320のユーザに対して、ユーザインタフェース326を通じて提供する。このようにして、本実施の形態に係るMID320は、MIDlet機能拡張部308がダウンロード可能であることを、ユーザに通知するという効果を奏する。
ここで例えば、ゲーム(MIDlet342)をMID320にインストールすると仮定する。そして少なくとも1つの新しいレベルのゲーム(MIDlet機能拡張部308)が利用可能となったものと仮定する。新しいレベルのゲームがダウンロード可能となったある時点で、アプリケーションマネージャ322は、MIDPサーバシステム302から新しいレベルのゲームに関する記述子をダウンロードする。そして、アプリケーションマネージャ322は、記述子からの情報(例えばゲームの新しいレベルについての短い記述)をMID320のユーザに対して表示する。このようにして、新しいレベルのゲームがダウンロード可能になったことをユーザに知らせることができる。
ここで、ユーザが、記述子312に対応するMIDlet機能拡張部(新しいレベルのゲーム)308をダウンロードする場合、ユーザは、このMIDlet機能拡張部308をダウンロードするために、要求330を、ユーザインタフェース326を通じてアプリケーションマネージャ322に送出する。そして、アプリケーションマネージャ322は、このユーザの要求330を受信する。
このユーザの要求330に応じて、アプリケーションマネージャ322は、MIDlet機能拡張部308をMID320に転送する旨の要求332を、MIDPサーバシステム302に対して送信する。MIDPサーバシステム302では、アプリケーションマネージャ322からの要求332を受信すると、リクエストハンドラ334が、この要求332を満たし、MIDlet機能拡張部308をMID320に転送する。
ある場合では、図3で示すシステム300は、公知のJ2MEのシステムと比較していくつか有利な点を有している。上述したとおり、公知のJ2MEシステムでは、開発者は以前のバージョンのMIDletに対して、追加機能を含む新しいバージョンのMIDletを作ることができる。しかしながら、このJ2MEシステムでは、他のMIDletファイルから、新しい機能を実行するMIDletファイルを分離する仕組みがない。それ故、MIDにて実行する新しい機能を有するためには、すでにダウンロードされ、MIDにおいてインストールしているいくつかのファイルを含むような場合であっても、新しいバージョンのMIDletを全てダウンロードしなければならない。この方法では、いくつかのMIDletファイルを複数回ダウンロードしてインストールすることになるので非効率的となる。
これに対して、図3に示したシステム300では、MID320のユーザは、オリジナルのMIDlet342をダウンロードすることなく、MIDlet機能拡張部308だけをダウンロードすればよい。言い換えれば、MIDPサーバシステム302からMIDlet機能拡張部308を、MID320に転送する場合、オリジナルのMIDlet342をMID320に再転送する必要がない。つまり、オリジナルのMIDlet342がすでにMID320にダウンロードされており、インストールされているので、MIDPサーバシステム302とMID320との両者のリソースをより効率的に使うこのような方法を提供できる。
MIDPサーバシステム302からMID320がMIDlet機能拡張部308を受信した場合、上記アプリケーションマネージャ322は、インストーラ336を呼び出す。そして、このインストーラ336は、アプリケーションマネージャ322からの指示に応じて、MIDlet機能拡張部308をMID320にインストールする。このようにMIDlet機能拡張部308がMID320にインストールされると、アプリケーションマネージャ322は、オリジナルのMIDlet342に関連付けられた拡張プロパティ340をアップデートする。この拡張プロパティ340とは、システムレベルのプロパティであり、例えば、MID320により保持されているものである。すなわち、システム500に関連するプロパティである。そして、この拡張プロパティ340は、MIDlet342に関する機能拡張部がMID320にいくつインストールされているかを示している。ある実施例では例えば、システムレベルの拡張プロパティ340の値がN(Nはゼロ以上の任意の整数)である場合、MID320には、MIDlet342に対するN個の機能拡張部がインストールされることとなる。
図3に関連させ上述した議論では、MIDPサーバシステム302からMIDlet機能拡張部308を発見し、ダウンロードし、インストールする、MID320の機能に焦点をあてて説明した。ところで、時々、MID320のユーザは、MID320にインストールした、1以上のMIDlet342を呼び出す構成であってもよい。またいくつかの実施例では、MIDlet342を呼び出す際、MID320にインストールされているMIDlet342に対する、いくつかの機能拡張部(MIDlet機能拡張部308)もまた自動的に呼び出すように構成されていてもよい。図4は、いくつかの実施例において、この機能を実行するように使用される様々な構成部材を示している。
この図4に示すシステム400では、MID420において、MIDlet442をすでにインストールしているものとする。そして、MIDlet442に対する機能拡張部408もまた、MID420にインストールされているものとする。ユーザがMIDlet442の起動を所望する場合、該ユーザは、ユーザインタフェース426を通じて、MIDlet442を起動する旨の要求446をアプリケーションマネージャ422に送出する。一方、この要求446に応じて、アプリケーションマネージャ422は、MIDlet442を呼び出す。より具体的には、(もしJVM444が起動していなければ)アプリケーションマネージャ422が、Java仮想マシン(Java virtual machine;JVM)444を起動させ、MIDlet442をJVM444にロードする。
また、アプリケーションマネージャ422は、MID420にインストールされているMIDlet442に対する機能拡張部がいくつか存在しているかを決定する。図示した実施例では、アプリケーションマネージャ422は、MIDlet442用の機能拡張部が、MID420にいくつインストールされているか、システムレベルの拡張プロパティ440に問い合わせることにより決定している。
ここで、図示した実施形態では、アプリケーションマネージャ422は、MID420にインストールされたMIDlet442に対する一つの機能拡張部408があると決定する。そして、このアプリケーションマネージャ422は、機能拡張部408を発見する。言い換えれば、アプリケーションマネージャ422は、MID420にインストールされている他のMIDlet、および/またはMIDlet機能拡張部の中からMIDlet機能拡張部408を認識する。なお、アプリケーションマネージャ422は、MIDlet442に関連付けられた記述子412における、拡張プロパティ414に問い合わせることで、MIDlet機能拡張部408を発見することができる。
このようにMIDlet機能拡張部408を発見すると、アプリケーションマネージャ422は、このMIDlet機能拡張部408を呼び出す。より具体的には、アプリケーションマネージャ422は、JVM444にMIDlet機能拡張部408をロードする。なお、MIDlet442とMIDlet機能拡張部408とは、互いのクラス、コンテンツファイルにアクセスできるように、MIDlet442とMIDlet機能拡張部408とがリンクされている。
上記した議論では、MID420のユーザがMIDlet442を呼び出すことに応じて、アプリケーションマネージャ422を含む、様々な構成部材の操作に焦点をおいて説明した。上記で述べたように、アプリケーションマネージャ422は、MIDlet442のユーザによる呼び出しに応じて、MIDlet442に対する機能拡張部408を、自動的に呼び出すように構成されていた。いくつかの実施例では、MID420のユーザは、MIDlet442ではなく、MIDlet機能拡張部408を呼び出す構成であってもよい。このような構成の場合、ユーザからのMIDlet機能拡張部408の呼び出しに応じて、アプリケーションマネージャ422は、自動的にオリジナルのMIDlet442を呼び出すように構成される。
またある時点で、MIDのユーザは、MIDから、MIDlet機能拡張部をアンインストールする事を決定することができる。いくつかの実施例では、オリジナルのMIDletをアンインストールしないで、MIDlet機能拡張部をMIDからアンインストールすることができる。なお、図5は、この機能を実現するために用いられる様々な構成部材について示している。
より具体的には、図5に示したシステム500では、MIDlet542およびMID520にインストールされているMIDlet542用のMIDlet機能拡張部508を有している。MIDlet機能拡張部508のアンインストールを所望する場合、ユーザは、ユーザインタフェース526を通じて、MIDlet機能拡張部508をアンインストールする旨の要求548をアプリケーションマネージャ522に送出する。この要求548に応じて、アプリケーションマネージャ522は、アンインストーラ550を呼び出す。このアンインストーラ550は、アプリケーションマネージャ522からの指示に応じて、MIDlet機能拡張部508をアンインストールする。このアンインストーラによる機能拡張部508のアンインストールは下記のようにして実現できる。すなわち、ユーザからの指示に応じて、アップリケーションマネージャ522は、機能拡張部に関連する拡張プロパティを読み出す。そして、該拡張プロパティから、インストールされているMIDlet機能拡張部に関する情報を抽出し、ユーザインタフェース526を通じてユーザに示す。ユーザはこの示された情報に応じて、MIDlet機能拡張部508をアンインストールするか否かを判断する。ここで、ユーザがアンインストールすると判断した場合、その旨を示す指示がユーザインタフェース526を通じてアプリケーションマネージャ522に送出される。アプリケーションマネージャ522は、ユーザから受信したこの指示に応じて、ユーザに示した上記拡張プロパティに対応するMIDlet機能拡張部508をアンインストールする。この方法の優れている点は、オリジナルのMIDlet542をアンインストールすることなく、MIDlet機能拡張部508をアンインストールする点である。
例えば、MIDlet542がゲームであり、機能拡張部508がこのゲームに対して少なくとも一つのレベルを追加するものであるとする。ここで、追加したレベルがもはや不要となった場合、ユーザはゲームそのものをアンインストールすることなく、この追加のレベルをアンインストールできる。
MIDlet機能拡張部508がアンインストールされると、アプリケーションマネージャ522は、MIDlet542用のMIDlet機能拡張部508がMID520にいくつインストールされているかを示す、システムレベルの拡張プロパティ540をアップデートする。例えば、MIDlet機能拡張部508のアンインストール前において、拡張プロパティ540の値が1であるとする。この場合、MID520には、MIDlet542に対するMIDlet機能拡張部508が1つインストールされていることになる。ここで、MIDlet機能拡張部508のアンインストール後において、アプリケーションマネージャ522が、上記値が「0」となるようにプロパティ540をアップデートしたとする。この場合、MID520にインストールされている、MIDlet542に対するMIDlet機能拡張部508が無いということを示す。
図6は、本実施の形態に係る、現行のMIDletに機能を追加し拡張する方法600を示すものである。この方法600は、MIDPサーバシステム102が備える構成部材によって実行される。
この方法600では、まず、現行のMIDletに機能を追加し拡張するためのファイル104を提供する(S602)。なお、このファイル104は、例えばJavaのクラスファイルや、コンテンツファイル(画像など)などである。そして、パッケージ化構成部106は、MIDlet機能拡張部108を作成するため、このファイル104をパッケージ化する(S604)。そして、パッケージ化構成部106は、MIDlet機能拡張部108用の記述子112を生成する(S606)。なお、上記で記載したように、記述子112は、MIDlet機能拡張部108に関する情報を含む、分離したファイルである。
次に、パッケージ化構成部106は、記述子112に対して1以上の拡張プロパティ114を追加する(S608)。なお、この拡張プロパティ114は、現行のMIDletに対して機能を拡張するMIDlet機能拡張部108を識別するとともに、MIDlet機能拡張部108の発見を容易とするものである。拡張プロパティ114の例として、ネームプロパティ214a、ベンダプロパティ214b、バージョンプロパティ214cなどが挙げられる。そして、パッケージ化構成部106は、この記述子112を、MIDlet機能拡張部108と関連付ける(S610)。
次いで、MID320により、MIDlet機能拡張部108用の記述子112が発見される(S612)。そして、MIDPサーバシステム102におけるリクエストハンドラ334は、MID320におけるアプリケーションマネージャ322から記述子112(記述子312)を該MID320に転送する旨の要求を受信する(S614)。これに応じて、リクエストハンドラ334は、上記要求を満たし、記述子112(記述子312)をMID320に転送する(S616)。このようにリクエストハンドラ334から記述子112(記述子312)を受信すると、MID320では、アプリケーションマネージャ322が、該記述子312から得た情報328を、ユーザインタフェース326を通じてMID320のユーザに対して提供する。
ここで、提供された記述子312の情報から、ユーザがMIDlet機能拡張部108をダウンロードすることを決定した場合、該ユーザは、MIDlet機能拡張部108のダウンロードの要求330を、ユーザインタフェース326を通じてアプリケーションマネージャ322に送出する。そして、アプリケーションマネージャ322が、ユーザからの要求330に応じて、MIDPサーバシステム302に対して、MIDlet機能拡張部108をMID320に転送する旨の要求332を送信する。
このようにして、リクエストハンドラ334は、MIDlet機能拡張部108をMID320に転送する旨の要求をMID320におけるアプリケーションマネージャ322から受信する(S618)。そして、これに応じて、リクエストハンドラ334は、上記要求を満たし、MIDlet機能拡張部108をMID320に転送する(S620)。
また、図7は、本発明の別の実施形態に係る、機能を追加するようにMIDletを拡張する方法700を示す図である。この方法700は、MID320が備える構成部材によって実行される。
まず、MID320が、MIDlet機能拡張部308用の記述子312を、MIDPサーバシステム302から受信する(S702)。このように記述子312を受信すると、MID320が備えるアプリケーションマネージャ322は、記述子312から得た情報328を、MID320のユーザに対して提供する(S704)。例えば、MIDlet機能拡張308によって提供される機能についての簡単な記述とともに、MIDlet機能拡張部308の名が、ユーザに対して表示される。このことによってユーザは、MIDlet機能拡張部308をダウンロードするか否かについて適宜決定することができる。
ユーザがMIDlet機能拡張部308をダウンロードすることを決定した場合、アプリケーションマネージャ322は、ユーザから、MIDlet機能拡張308をダウンロードする旨の要求330を受信する(S706)。このユーザの要求330に応じて、アプリケーションマネージャ322は、MIDlet機能拡張部308をMID320に転送する旨の要求332を、MIDPサーバシステム302に送信する(S708)。MIDPサーバシステム302がこの要求を満たすと、アプリケーションマネージャ322は、該MIDPサーバシステム302からMIDlet機能拡張部308を受信する(S710)。ここで、MIDPサーバシステム302は、MIDlet機能拡張部308をMID320に転送する際、オリジナルのMIDlet342を、MID320に再転送する必要はない。それ故、アプリケーションマネージャ322は、オリジナルMIDlet342のさらなるコピーを受信しない。
このようにMIDlet機能拡張部308を受信すると、アプリケーションマネージャ322からの指示に応じて、インストーラ336は、MIDlet機能拡張部308をインストールする(S712)。一方、アプリケーションマネージャ322は、MIDlet342に関連付けられたシステムレベルの拡張プロパティ340をアップデートする(S714)。このシステムレベル拡張プロパティ340は、MID320にインストールされている、MIDlet342用のMIDlet機能拡張部308がいくつあるのかを示している。
ある時点でアプリケーションマネージャ322は、ユーザからMIDlet機能拡張部308をアンインストールする旨の要求(要求548)を受信する(S716)。この要求(要求548)に応じて、アプリケーションマネージャ322は、MIDlet機能拡張部308(MIDlet機能拡張部508)をアンインストールする(S718)。この方法の優れている点は、オリジナルのMIDlet342をアンインストールすることなく、MIDlet機能拡張部308(MIDlet機能拡張部508)がアンインストールされる点である。機能拡張部308(MIDlet機能拡張部508)のアンインストールに応じて、アプリケーションマネージャ322は、MIDlet342(MIDlet542)に関連付けられたシステムレベルの拡張プロパティ340(拡張プロパティ540)をアップデートする(S720)。
図8は、本発明の別の実施形態に係る、MIDletに機能を追加し拡張する方法800について示すものである。なお、この方法800は、MID420が備える構成部材により実行される。
まず、アプリケーションマネージャ422は、MIDlet442を呼び出す旨の要求(要求446)を、MID420のユーザから受信する(S802)。このユーザからのの要求(要求446)に応じて、上記アプリケーションマネージャ422は、MIDlet442を呼び出す(S804)。すなわち、いくつかの実施例では、MIDlet442をJVM444に呼び出すことで実現される。
次に、アプリケーションマネージャ422は、MIDlet機能拡張部408を、MID420にインストールすることを決定する(S806)。なお、アプリケーションマネージャ422は、MID420においてMIDlet442用のMIDlet機能拡張部408がいくつインストールされているかを示す、システムレベルの拡張プロパティ440への問い合わせにより、この決定を行うことができる。
そして、アプリケーションマネージャ422は、MIDlet機能拡張部408を発見する(S808)。すなわち、アプリケーションマネージャ422は、MIDlet機能拡張部408に関連付けられた記述子412における拡張プロパティ414に問い合わせることでMIDlet機能拡張を発見することができる。
そして、アプリケーションマネージャ422は、MIDlet機能拡張部408を呼び出す(S810)。すなわち、いくつかの実施例では、MIDlet機能拡張部408をJVM444に読み出す構成であってもよい。また、MIDlet442とMIDlet機能拡張408とが互いのクラスファイル、コンテンツファイルにアクセスできるように、MIDlet442とMIDlet機能拡張408とがリンクしている(S812)。
図9は、例えばMIDPサーバシステム102および/またはMID320などのコンピュータシステム901において一般的に利用される主要なハードウェア構成を示す図である。この図示した構成部材は、物理的に同一構造内に配置されてもよいし、分離された筐体または構造内に配置されていてもよい。
このコンピュータシステム901は、プロセッサ903、およびメモリ905を備える。このプロセッサ903は、コンピュータシステム901の動作を制御するものであり、マイクロプロセッサ、マイクロコントローラ、ディジタル信号プロセッサ(DSP)または他の公知となっている装置などによって実現できる。プロセッサ903は典型的には論理的、算術的な処理を、メモリ905に記憶されたプログラムの命令に基づいて実行する。
ここで用いられる、メモリ905という用語は電子情報を記憶できる、電子機器全般として広く定義されるものあり、具体的にはROM(read only memory)、RAM(random access memory)、磁気ディスク、光ディスク、フラッシュメモリRAM、プロセッサ903を含むオンボードメモリ、EPROMメモリ、EEPROMメモリ、レジスタなどによって実現できる。メモリ905は典型的には、プログラム命令および他の情報を保存する。プログラム命令をプロセッサ903が実行することにより、ここで明記した、いくつか、またはすべての方法を実施することができる。
また、コンピュータシステム901は、他の電子デバイスと通信するための、1つ以上の通信インターフェース907も備える。通信インターフェース907は、有線通信技術に基づくものであってもよいし、無線通信技術に基づくものであってもよい。さらには、両方の技術に基づくものであってもよい。通信インターフェース907の種類としては、シリアルポート、パラレルポート、ユニバーサルシリアルバス(USB)、イーサネット(登録商標)アダプタ、IEEE1394バスインタフェース、スモールコンピュータシステムインタフェース(SCSI)、赤外線(IR)通信ポート、Bluetooth(登録商標)無線通信アダプタなどがある。
また、上記コンピュータシステム901は、1つ以上の入力装置909、および出力装置911を備えている。この入力装置909の例としては、キーボード、マウス、マイクロフォン、遠隔制御装置、操作ボタン、ジョイスティック、トラックボール、タッチパッド、ライトペンなどがある。出力装置911の例としては、スピーカ、プリンタなどがある。コンピュータシステムに典型的な出力装置としては、表示装置913が挙げられる。本明細書において開示した実施形態において用いられる表示装置913は、例えばブラウン管(CRT)、液晶ディスプレイ(LCD)、発光ダイオード(LED)、ガスプラズマ、エレクトロルミネッセンスなど、あらゆる好適な映像投影技術を利用することができる。また、表示制御装置915は、メモリ905に保存されたデータを好適に、テキスト、画像、および/または動画に変換し、表示装置913で表示させることができるものである。
もちろん、図9はコンピュータシステムの可能な構成の一例が記載されており、様々なほかのアーキテクチャや構成が利用可能である。
また、情報と信号は、様々な異なる科学技術および技術によって表現することができる。上記した記述子を通して示すことができる、例えば、データ、命令、コマンド、情報、信号、ビット、シンボル、およびチップなどは、電圧、電流、電磁波、磁場、磁粒子、光子場、光子、若しくはこれらの組み合わせによって示すことができる。
本明細書において開示した実施形態に関連して記述された、様々に示した論理ブロック、モジュール、回路、およびアルゴリズムは、電子ハードウェア、コンピュータソフトウェア、若しくはそれらを両者の組み合わせにより実現できる。このハードウェアとソフトウェアとの互換性を明確に説明するために、具体例として挙げた様々な構成部材、ブロック、モジュール、回路、および処理工程を、概してそれらの機能性に関して、上述した。そのような機能性がハードウェアとして実現されるかソフトウェアとして実現されるかについては、特定のアプリケーションおよびシステム全体により制限される設計制約に依存する。当業者は、上述の機能性を各特定の用途のために様々な方法で実施可能であるが、そのような実施の決定は、本発明の範囲からの逸脱を引き起こすものとして解釈されるべきではない。
本明細書にて開示した実施形態に関連して記述した、様々な実施例での論理ブロック、モジュール、および回路を、汎用プロセッサ、デジタル・シグナル・プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ信号(FPGA)、もしくは他のプログラム可能な論理回路、または個別ゲート、トランジスタ論理、個別のハードウェア構成部材、あるいは本実施の形態で示した機能性を実現できるように構成されたこれら各部材のあらゆる組み合わせによって、実行または実施可能とする。また、上記汎用プロセッサは、マイクロプロセッサであってもよいが、別法としては、従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であってもよい。上記プロセッサは、コンピュータ・デバイスの組み合わせとして実装できる。
なお、このコンピュータ・デバイスの組み合わせとは、例えばDSPおよびマイクロプロセッサの組み合わせ、複数のマイクロプロセッサの組み合わせ、DSPコアと結合した1つ以上のマイクロプロセッサの組み合わせ、またはこれらの別の機器構成などである。
ここで開示された上記実施形態に関連して記述された方法またはアルゴリズムによる上記ステップは、ハードウェア、プロセッサによって実行されるソフトウェア・モジュール、またはそれらの組み合わせにおいて直接実施されてもよい。また、このソフトウェア・モジュールを、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD−ROM、または公知となっている他のあらゆる形式の記録媒体に備える構成であってもよい。実施例では、上記記録媒体は、プロセッサに結合されていた。このようなプロセッサは、この記憶媒体から情報を読み取ったり、情報を書き込んだりすることができる。また、別の方法として、記録媒体をプロセッサと一体に構成してもよい。また、該プロセッサおよび記録媒体をASICに備える構成であってもよく、そして該ASICがユーザ端末に備えられていてもよい。また、別の方法として、プロセッサおよび記憶媒体を個別部品としてユーザ端末に備える構成であってもよい。
本明細書で開示した方法では、この方法を達成するための1つ以上のステップまたは動作を含んでいる。また、この方法のステップおよび/または動作は、本発明の範囲から逸脱することなく、互いに入れ替えることができる。すなわち、上記実施形態を適切に作動させるためのステップまたは動作において特定の順序が要求されない場合、特定のステップおよび/または動作の特定の順序および/または使用は、本発明の範囲から逸脱することなく、変更することができる範囲である。
本発明の特定の実施形態および応用例について図示し、説明したが、本発明は、明細書中において開示されたまさにその構成および構成要素に限定されるものではない。当業者には明白な様々な修正、変更、および変形が、本発明の精神と範囲とから逸脱することなく、ここで開示された本発明の上記方法およびシステムの配置、操作、および細部において可能である。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
本実施の形態に係る移動通信機器は、MIDletに新たな機能を追加する必要がある場合、MIDletを拡張するためのファイルである機能拡張部のみを、該機能拡張部に関する情報を含む記述子を参照してMIDPサーバシステムからダウンロードできる。このため、アプリケーションソフトを効率的に更新する必要がある装置において広く利用できる。
本発明の実施形態に係る、MIDletに機能を追加し拡張するシステムの構成を示す図であり、このシステムは、MIDPを実行するサーバシステム、MIDlet機能拡張部、そして付随する記述子を備える。 MIDlet機能拡張部用の記述子の実施例を示す図である。 MIDPサーバシステムから記述子およびMIDlet機能拡張部を発見し、ダウンロードするために用いられる、MIDが備える様々な構成部材について示す図である。 MIDにインストールされた一つ以上のMIDletを呼び出すために用いられる、MIDが備える様々な構成部材について示す図である。 MIDからMIDlet機能拡張をアンインストールするために用いられる、MIDが備える様々な構成部材について示す図である。 本発明の実施形態に係る、MIDletに機能を追加し拡張する方法について示す図である。 本発明の別の実施形態に係る、MIDletに機能を追加し拡張する方法について示す図である。 本発明の別の実施形態に係る、MIDletに機能を追加し拡張する方法について示す図である。 コンピュータシステムにおいて一般的に利用されている、主なハードウェア構成部材を示す図である。
符号の説明
100 システム(機能拡張システム)
102 MIDPサーバシステム(サーバシステム)
104 ファイル
106 パッケージ化構成部
108 MIDlet機能拡張部
112 記述子
114 拡張プロパティ
212 記述子
214a 名前プロパティ
214b ベンダプロパティ
214c バージョンプロパティ
216a 名前情報
216b ベンダ情報
216c バージョン情報
300 システム(機能拡張システム)
302 MIDPサーバシステム(サーバシステム)
308 MIDlet機能拡張部
312 記述子
320 移動通信機器
322 アプリケーションマネージャ(取得手段・記述子取得手段・出力手段)
326 ユーザインタフェース(出力手段)
336 インストーラ(インストール手段)
340 プロパティ
342 MIDlet
400 システム(機能拡張システム)
408 MIDlet機能拡張部
412 記述子
414 拡張プロパティ
420 移動通信機器
422 アプリケーションマネージャ(取得手段・記述子取得手段・出力手段)
426 ユーザインタフェース(出力手段)
440 プロパティ
442 MIDlet
500 システム(機能拡張システム)
508 MIDlet機能拡張部
520 移動通信機器
522 アプリケーションマネージャ(取得手段・記述子取得手段・出力手段)
526 ユーザインタフェース(出力手段)
540 プロパティ
542 MIDlet
550 アンインストーラ
901 コンピュータシステム
903 プロセッサ
905 メモリ

Claims (20)

  1. 1以上のMIDletスイート、および1以上のダウンロード用MIDlet記述子を提供するサーバシステムにおいて、現行のMIDletに機能を追加し拡張する方法であって、
    MIDletに機能を追加し拡張するための、1以上のファイルを提供するステップと、
    MIDlet機能拡張部を生成するように上記1以上のファイルをパッケージ化するステップと、
    上記MIDlet機能拡張部用の記述子を生成するステップと、
    少なくとも1つの拡張プロパティを上記記述子に追加するステップとを含み、該少なくとも1つの拡張プロパティが、上記MIDlet機能拡張部を上記MIDletに対する拡張であると認識し、該MIDlet機能拡張部の発見を容易としており、
    さらに、上記記述子をMIDlet機能拡張部に関連付けるステップを含むことを特徴とする方法。
  2. 上記少なくとも1つの拡張プロパティは、
    拡張されたMIDletの名前を識別する名前プロパティと、
    拡張されたMIDletのベンダを識別するベンダプロパティと、
    拡張されたMIDletのバージョンを識別するバージョンプロパティと、を有することを特徴とする請求項1に記載の方法。
  3. 上記少なくとも1つの拡張プロパティは、拡張識別子を有することを特徴とする請求項1に記載の方法。
  4. 移動通信機器により上記記述子が発見されるステップをさらに含むことを特徴とする請求項1に記載の方法。
  5. 上記記述子を移動通信機器に転送する旨の要求を、該移動通信機器から受信するステップと、
    上記要求に対する応答として、上記記述子を上記移動通信機器に転送するステップと、を含むことを特徴とする請求項1に記載の方法。
  6. 上記MIDlet機能拡張部を上記移動通信機器に転送する旨の要求を、該移動通信機器から受信するステップと、
    上記要求に対する応答として、上記MIDlet機能拡張部を、上記移動通信機器に転送するステップと、を含むことを特徴とする請求項1に記載の方法。
  7. 移動通信機器において、現行のMIDletに機能を追加し拡張する方法であって、
    サーバからMIDlet機能拡張部用の記述子を受信するステップを含み、該MIDlet機能拡張部は、MIDletに機能を追加し拡張するための、1つ以上のファイルを有しており、
    さらに、上記記述子からの情報をユーザに提供するステップと、
    ユーザから、上記MIDlet機能拡張部をダウンロードする旨のダウンロード要求を受信するステップと、
    上記ダウンロード要求に対する応答として、サーバに対して、上記MIDlet機能拡張部を移動通信機器に転送する旨の要求を送信するステップと、
    上記MIDletのコピーを受信することなく、上記MIDlet機能拡張部をサーバから受信するステップと、
    上記MIDlet機能拡張部を当該移動通信機器にインストールするステップと、を含むことを特徴とする方法。
  8. 上記MIDlet機能拡張部のインストールに応じて、上記MIDletに関連付けられた、システムレベルの拡張プロパティをアップデートするステップをさらに含むことを特徴とする請求項7に記載の方法。
  9. ユーザから、上記MIDlet機能拡張部をアンインストールする旨の、アンインストール要求を受信するステップと、
    上記アンインストール要求に対して、上記MIDletをアンインストールすることなく、上記MIDlet機能拡張部を、当該移動通信機器からアンインストールするステップと、を含むことを特徴とする請求項7に記載の方法。
  10. 上記MIDlet機能拡張部のアンインストールに応じて、上記MIDletに関連付けられた、システムレベルの機能拡張プロパティをアップデートするステップをさらに含むことを特徴とする請求項9に記載の方法。
  11. 移動通信機器において、現行のMIDletに機能を追加し拡張する方法であって、
    ユーザからMIDletを呼び出す旨の要求を受信するステップと、
    この要求に応じて上記MIDletを呼び出すステップと、
    当該移動通信機器に、MIDletに機能を追加し拡張するためのMIDlet機能拡張部をインストールすることを決定するステップと、
    上記MIDlet機能拡張部を発見するステップと、
    上記MIDlet機能拡張部を呼び出すステップと、を含むことを特徴とする方法。
  12. 上記MIDletと上記MIDlet機能拡張部とをリンクするステップをさらに含むことを特徴とする請求項11に記載の方法。
  13. 上記MIDletに関連付けられたシステムレベルの拡張プロパティの問い合わせを行うステップを含む、上記MIDlet機能拡張部を当該移動通信機器にインストールすることを決定するステップをさらに含むことを特徴とする請求項11に記載の方法。
  14. 上記MIDlet機能拡張部に関連付けられた記述子において拡張プロパティを問い合わせるステップを含む、該MIDlet機能拡張部を発見するステップをさらに有することを特徴とする請求項11に記載の方法。
  15. 現行のMIDletに機能を追加し拡張するための方法を実行するように構成された移動通信機器であって、
    プロセッサと、
    上記プロセッサと電気的に通信しているメモリとを備え、該メモリ内には命令が記憶されており、
    上記命令が、
    MIDletを呼び出す旨のユーザからの要求を受信するステップと、
    この要求に応じて、上記MIDletを呼び出すステップと、
    MIDletに機能を追加し拡張するためのMIDlet機能拡張部を当該移動通信機器にインストールすることを決定するステップと、
    さらに上記MIDlet機能拡張部を発見するステップと、
    上記MIDlet機能拡張部を呼び出すステップと、を含む方法を実行可能とすることを特徴とする移動通信機器。
  16. 現行のMIDletに機能を追加し拡張する方法を実施するための、実行可能な命令を含むコンピュータで読み取り可能な記録媒体であって、
    上記方法が、
    MIDletを呼び出す旨のユーザからの要求を受信するステップと、
    この要求に対する応答としてMIDletを呼び出すステップと、
    移動通信機器に、MIDletに機能を追加し拡張するためのMIDlet機能拡張部をインストールすることを決定するステップと、
    上記MIDlet機能拡張部を発見するステップと、
    上記MIDlet機能拡張部を呼び出すステップと、を含むことを特徴とする記録媒体。
  17. MIDletに機能を追加し拡張するための1つ以上のファイルであるMIDlet機能拡張部を取得する取得手段と、
    上記取得手段により取得したMIDlet機能拡張部を、自装置においてインストールするインストール手段と、を備えることを特徴とする移動通信機器。
  18. 上記MIDlet機能拡張部に関する情報である機能拡張部情報を含む記述子を取得する記述子取得手段と、
    上記記述子取得手段によって取得された記述子から上記機能拡張部情報を抽出し出力する出力手段と、
    上記出力手段によって出力された機能拡張部情報に応じて、ユーザから、該機能拡張部情報に対応するMIDlet機能拡張部のダウンロード指示を受け付けた場合、上記取得手段が上記記述子取得手段によって取得された記述子に対応するMIDlet機能拡張部を取得することを特徴とする請求項17に記載の移動通信機器。
  19. ユーザから、MIDlet機能拡張部をアンインストールする旨の要求を受け付けた場合、上記MIDlet機能拡張部に対応する記述子に基づき、インストールされているMIDletから上記MIDlet機能拡張部のみをアンインストールするアンインストール手段を備えることを特徴とする請求項17または18に記載の移動通信機器。
  20. 請求項17〜19のいずれか1項に記載の移動通信機器と、
    上記機能拡張部を保持しており、上記移動通信機器からのMIDlet機能拡張部の送信要求に応じて該MIDlet機能拡張部を送信する送信手段を有するサーバシステムと、を備えることを特徴とする機能拡張システム。
JP2006103285A 2005-04-04 2006-04-04 機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法 Pending JP2006286003A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/098,345 US20060225066A1 (en) 2005-04-04 2005-04-04 Systems and methods for extending an application on a mobile information device with additional functionality

Publications (1)

Publication Number Publication Date
JP2006286003A true JP2006286003A (ja) 2006-10-19

Family

ID=37072145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006103285A Pending JP2006286003A (ja) 2005-04-04 2006-04-04 機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法

Country Status (2)

Country Link
US (1) US20060225066A1 (ja)
JP (1) JP2006286003A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009512002A (ja) * 2005-09-28 2009-03-19 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ローカルデバイス上のウェブブラウザからMIDletを呼び出すための方法及びシステム
JP2013506174A (ja) * 2010-01-22 2013-02-21 ▲華▼▲為▼▲終▼端有限公司 Java(登録商標)ソフトウェアを携帯端末に統合するための方法及び装置、そして携帯端末

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180316634A1 (en) * 2017-04-26 2018-11-01 Microsoft Technology Licensing, Llc Extending application functionality via conversational interfaces

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004032122A (ja) * 2002-06-21 2004-01-29 Vodafone Kk 情報提供サーバ装置、情報利用端末装置及び情報通信システム
WO2004054275A2 (en) * 2002-12-11 2004-06-24 Nokia Corporation Downloading software applications

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308061B1 (en) * 1996-08-07 2001-10-23 Telxon Corporation Wireless software upgrades with version control
US5974454A (en) * 1997-11-14 1999-10-26 Microsoft Corporation Method and system for installing and updating program module components
US6675382B1 (en) * 1999-06-14 2004-01-06 Sun Microsystems, Inc. Software packaging and distribution system
JP3669619B2 (ja) * 1999-09-06 2005-07-13 富士通株式会社 無線端末装置のソフトウェア更新方法及びその装置
AU2002226995A1 (en) * 2000-11-28 2002-06-11 4Thpass Inc. Method and system for maintaining and distributing wireless applications
KR100438698B1 (ko) * 2001-07-07 2004-07-05 삼성전자주식회사 자바어플리케이션간의 커뮤니케이션을 이용한자바어플리케이션 미들렛의 실행방법
US20030056194A1 (en) * 2001-07-16 2003-03-20 Lino Iglesias Enhanced software components
US20030081002A1 (en) * 2001-10-30 2003-05-01 Microsoft Corporation Method and system for chaining and extending wizards
US7512932B2 (en) * 2002-03-22 2009-03-31 Sun Microsystems, Inc. Language and object model for describing MIDlets
US7096311B2 (en) * 2002-09-30 2006-08-22 Innopath Software, Inc. Updating electronic files using byte-level file differencing and updating algorithms
US7814476B2 (en) * 2002-10-31 2010-10-12 Oracle America, Inc. Systems and methods for updating software
US7562346B2 (en) * 2003-09-02 2009-07-14 Microsoft Corporation Software componentization for building a software product
US20060031681A1 (en) * 2004-08-05 2006-02-09 Motorola, Inc. Method and system for controlling access to a wireless client device
US7640542B2 (en) * 2005-03-24 2009-12-29 Nokia Corporation Managing midlet suites in OSGI environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004032122A (ja) * 2002-06-21 2004-01-29 Vodafone Kk 情報提供サーバ装置、情報利用端末装置及び情報通信システム
WO2004054275A2 (en) * 2002-12-11 2004-06-24 Nokia Corporation Downloading software applications

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009512002A (ja) * 2005-09-28 2009-03-19 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ローカルデバイス上のウェブブラウザからMIDletを呼び出すための方法及びシステム
JP2013506174A (ja) * 2010-01-22 2013-02-21 ▲華▼▲為▼▲終▼端有限公司 Java(登録商標)ソフトウェアを携帯端末に統合するための方法及び装置、そして携帯端末
KR101369275B1 (ko) * 2010-01-22 2014-03-25 후아웨이 디바이스 컴퍼니 리미티드 자바 소프트웨어를 모바일 단말기에 통합하기 위한 방법 및 장치와 모바일 단말기
US9430210B2 (en) 2010-01-22 2016-08-30 Huawei Device Co., Ltd. Method and apparatus for integrating java software into mobile terminal, and mobile terminal

Also Published As

Publication number Publication date
US20060225066A1 (en) 2006-10-05

Similar Documents

Publication Publication Date Title
JP5663006B2 (ja) ランタイム環境を構築するためのシステムおよび方法
US10296323B2 (en) System and method for fast initial and incremental deployment of apps
JP5007046B2 (ja) コンポーネントベースのソフトウェア・プロダクトの保守
US9262153B2 (en) Firmware update discovery and distribution
US9235404B2 (en) Firmware update system
US9110761B2 (en) Resource data structures for firmware updates
US7937698B2 (en) Extensible mechanism for automatically migrating resource adapter components in a development environment
JP2010165128A (ja) 画像形成装置及び制御方法及びプログラム
KR20140046402A (ko) 라이브러리 운영체제들과의 애플리케이션 호환성
US9032394B1 (en) Deploying drivers for an operating system on a computing device
JP2010277549A (ja) プログラム、記憶媒体、情報処理装置、プリンタ装置およびシステム
KR102485935B1 (ko) 전자 장치 및 그의 동작 방법
CN102402427A (zh) 一种Java应用程序的更新方法及装置
JP2005182775A (ja) カーネルモードシミングのためのドライバ固有コンテキスト
JP2016197399A (ja) オペレーティング・システム・リソースに対する機械語のネイティブイメージのアクセス制御のシステム及び方法
US10089102B2 (en) Information processing apparatus, method, and program
CN106796521B (zh) 独立于产品发布的api版本控制
CN114651233A (zh) 即时容器
US9086938B2 (en) Information processing apparatus, control method thereof, and storage medium
US8549049B2 (en) Systems and methods for updating an application on a mobile information device
CN109857444B (zh) 应用程序的更新方法、装置、电子设备和可读存储介质
JP2006163840A (ja) 情報処理装置及びその方法
JP2006286003A (ja) 機能を追加するように、移動通信機器にてアプリケーションを拡張するシステム、およびその方法
US20150081269A1 (en) Language Localization Of Java Applications
US9753775B2 (en) Resource management apparatus and resource management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111101

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120321