(57)【要約】【課題】アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、アプリプログラムと拡張アプリプログラムとを配信する仕組みを提供する。【解決手段】画像形成装置１０１が、インストールされた画像形成装置において特定のサービスを提供するアプリプログラムと、拡張アプリプログラムの登録を受け付ける。画像形成装置１０１が、拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、拡張アプリプログラムを上記アプリプログラムと紐付くように管理する。そして、ライセンスキーが受信された場合、画像形成装置１０１が、ライセンスキーから特定されるアプリプログラムおよび／または上記アプリプログラムに紐付く拡張アプリプログラムを画像形成装置１０１に配信する。【選択図】図１
2014157529.tif 000002
【特許請求の範囲】
【請求項１】
デバイス装置にアプリプログラムを配信する配信装置であって、
インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける受付手段と、
前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する管理手段と、
ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび／または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する配信手段とを有する配信装置。
【請求項２】
前記配信手段は、前記アプリプログラムに紐付く拡張アプリプログラムの配信を、当該拡張アプリプログラムの種類に応じて制御する
ことを特徴とする請求項１に記載の配信装置。
【請求項３】
前記管理手段は、
前記拡張アプリプログラムを当該拡張アプリプログラムの種類情報とともに前記アプリプログラムと紐付けて管理し、
前記アプリプログラムを前記ライセンスキーと紐付けて管理し、
前記配信手段は、前記受信されたライセンスキーと紐付けて管理されているアプリプログラムを特定し、前記特定されたアプリプログラムと紐付けて管理されている拡張アプリプログラムを配信する
ことを特徴とする請求項１または請求項２に記載の配信装置。
【請求項４】
前記アプリプログラムの管理画面を表示する表示手段を備え、
前記表示手段は、前記管理画面上での操作に応じて、前記アプリプログラムを指定する拡張アプリプログラムの設定画面を表示し、
前記管理手段は、前記設定画面上で選択された前記拡張アプリプログラムを前記アプリプログラムと紐付けて管理する
ことを特徴とする請求項１乃至３のいずれか１項に記載の配信装置。
【請求項５】
請求項１乃至３のいずれか１項に記載の配信装置からアプリプログラムの配信を受けるデバイス装置であって、
前記ライセンスキーを前記配信装置に送信する送信手段と、
前記配信装置から、前記ライセンスキーから特定されるアプリプログラムと、当該アプリプログラムに紐付く拡張アプリプログラムとのリストを受信して、当該リストに含まれるアプリプログラムと拡張アプリプログラムの選択画面を表示する表示手段と、
前記選択画面上で選択されたアプリプログラムまたは拡張アプリプログラムの配信を前記配信装置に対して要求する要求手段と、
前記要求に応じた前記配信装置から配信された前記アプリプログラムまたは拡張アプリプログラムを受信する受信手段とを備える
ことを特徴とするデバイス装置。
【請求項６】
前記表示手段は、前記リストに含まれる拡張アプリプログラムのうち、前記デバイス装置の設定言語に適合する拡張アプリプログラムを前記選択画面上に表示する
ことを特徴とする請求項５に記載のデバイス装置。
【請求項７】
前記表示手段は、前記選択画面において、前記リストに含まれる拡張アプリプログラムのうち、予め決められた個数以上の拡張アプリプログラムを選択できないように表示制御する
ことを特徴とする請求項５または請求項６に記載のデバイス装置。
【請求項８】
前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みでない場合に、前記選択画面において当該アプリプログラムを選択しないと当該アプリプログラムに紐付く拡張アプリプログラムを選択できないように表示制御する
ことを特徴とする請求項５乃至７のいずれか１項に記載のデバイス装置。
【請求項９】
前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みである場合に、前記選択画面において当該アプリプログラムを選択しなくても当該アプリプログラムに紐付く拡張アプリプログラムを選択できるように表示制御する
ことを特徴とする請求項５乃至８のいずれか１項に記載のデバイス装置。
【請求項１０】
前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みである場合であって、前記選択画面において選択された拡張アプリプログラムが有償であるときに、ライセンスキーの入力欄を表示し、
前記要求手段は、前記ライセンスキーの入力欄に前記ライセンスキーが入力された場合に、前記有償の拡張アプリプログラムの配信を前記配信装置に対して要求する
ことを特徴とする請求項５乃至９のいずれか１項に記載のデバイス装置。
【請求項１１】
前記表示手段は、前記リストに含まれる拡張アプリプログラムを前記選択画面上に表示せず、
前記要求手段は、前記リストに含まれる全ての拡張アプリプログラムの配信を前記配信装置に対して要求する
ことを特徴とする請求項５に記載のデバイス装置。
【請求項１２】
デバイス装置にアプリプログラムを配信する配信装置の制御方法であって、
インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける工程と、
前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する工程と、
ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび／または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する工程とを有することを特徴とする制御方法。
【請求項１３】
請求項１２に記載の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションをデバイス装置に配信する配信技術に関する。
【背景技術】
【０００２】
アプリケーションの開始、停止など、アプリケーションのライフサイクルを管理するフレームワークとして、ＯＳＧｉ（Open Services Gateway initiative）ＡｌｌｉａｎｃｅからＯＳＧｉフレームワークが提唱されている。ＯＳＧｉフレームワークでは、アプリケーションの形式をＪａｖａ（登録商標）の圧縮フォーマットであるｊａｒファイルとして規定している。ｊａｒファイルは、複数のクラスファイルをアーカイブとして１つにまとめたものである。ｊａｒファイルは、内部にMANIFEST.MF というマニフェストファイルを１つ持っており、ｊａｒファイルの説明が記載される。マニフェストファイルにＯＳＧｉ仕様の属性を記載することで、ＯＳＧｉフレームワークは、上記記載された属性に従って、アプリケーションのライフサイクルを管理する。
【０００３】
ＯＳＧｉの仕様により、アプリ本体がホストバンドルと定義されている。また、ホストバンドルの修正または拡張部分（拡張アプリプログラム）が、フラグメントバンドルと定義されている。フラグメントバンドルは、単独では動作せず、ホストバンドルのクラスローダ空間にフラグメントバンドル自身を追加（アタッチ）するバンドルである。アプリの修正または拡張時に、フラグメントバンドルを用いて修正または拡張するようにすれば、差分のみリリース・評価を行うことが可能になるため、開発の効率化やテスト・評価工数の削減の実現が可能となる。
【０００４】
一方、画像形成装置において、アプリケーションを外部からインストールして搭載することが試みられており、ＯＳＧｉフレームワークに準拠した仕組みを搭載した画像形成装置が提案されている。
【０００５】
特許文献１は、本体アプリのインストールに用いたライセンスファイルを記憶部に記憶し、このライセンスファイルを用いて拡張ファイルをインストールする情報処理装置を開示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１４１０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、従来、アプリプログラムと、当該アプリプログラムに関連する拡張アプリプログラムとを合わせて配信することを可能とする配信装置は提案されていない。また、従来技術では、拡張アプリプログラムは、無条件でインストールができてしまい、拡張アプリプログラムの種類に応じて拡張アプリプログラムの配信を制御することはできない。したがって、従来技術では、例えば、有償提供／無償提供の拡張アプリプログラムを用意して、拡張アプリの種類に応じてインストールを制御することはできない。
【０００８】
本発明は、上記の課題の少なくとも一つを解決するためになされたものである。本発明は、アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、上記アプリプログラムと拡張アプリプログラムとを配信する仕組みの提供を目的とする。
【課題を解決するための手段】
【０００９】
本発明の一実施形態の配信装置は、デバイス装置にアプリプログラムを配信する配信装置であって、インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける受付手段と、前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する管理手段と、ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび／または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する配信手段とを有する。
【発明の効果】
【００１０】
本発明の配信装置によれば、アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、上記アプリプログラムと拡張アプリプログラムとを配信することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態のシステム構成の一例を示す図である。
【図２】画像形成装置のハードウェア構成例を示す図である。
【図３】アプリケーション配信サーバのハードウェア構成例を示す図である。
【図４】アプリケーション管理サーバのハードウェア構成例を示す図である。
【図５】画像形成装置、アプリケーション配信サーバ、アプリケーション管理サーバの機能ブロック図の例である。
【図６】フラグメントバンドルの概念を説明する図である。
【図７】フラグメントバンドルの設定処理の例を説明する図である。
【図８】フラグメントバンドルの検索処理の例を説明する図である。
【図９】アプリケーションの取得処理の例を説明する図である。
【図１０】インストール確認画面の表示処理の例を説明するフローチャートである。
【図１１】商品管理テーブル内のＤＢ情報である。
【図１２】アプリ管理テーブル内のＤＢ情報である。
【図１３】フラグメントバンドルの取得処理の例を説明するシーケンス図である。
【図１４】アプリケーションの管理画面、設定画面、設定完了画面の例である。
【図１５】管理メニューの例である。
【図１６】選択画面とインストール完了画面の例である。
【図１７】選択画面とインストール完了画面の例である。
【図１８】選択画面とインストール完了画面の例である。
【図１９】選択画面とインストール完了画面の例である。
【図２０】選択画面とインストール完了画面の例である。
【発明を実施するための形態】
【００１２】
以下に、図面を参照して、本実施形態について説明する。以下に説明する本実施形態の構成は、例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００１３】
図１は、本実施形態のシステム構成の一例を示す図である。図１（Ａ）に示すシステムは、画像処理装置１０１と、アプリケーション配信サーバ１０２と、アプリケーション管理サーバ１０３とを備える。画像処理装置１０１とアプリケーション配信サーバ１０２とは、ネットワークを介して通信可能である。また、アプリケーション配信サーバ１０２とアプリケーション管理サーバ１０３とは、ネットワーク１０４を介して通信可能である。
【００１４】
画像処理装置は、プリンタ、スキャナ、コピー、ＦＡＸなどの機能を有するデバイス装置である。画像形成装置１０１は複数のアプリケーション（アプリプログラム）をインストール可能である。画像形成装置１０１は、画像形成装置に割り当てられた固有の機器ＩＤを有する。なお、以下では、アプリケーションを単にアプリとも記述する。
【００１５】
アプリケーション配信サーバ１０２は、画像形成装置１０１にアプリケーションを配信する。アプリケーション管理サーバ１０３は、画像形成装置にインストールするアプリケーションの商品を登録して管理する。ネットワーク１０４は、例えばインターネットである。画像形成装置にインストールするアプリケーションは、例えば、ホストバンドルおよび／またはフラグメントバンドルである。ホストバンドルは、インストールされた装置において特定のサービスを提供するアプリプログラムである。フラグメントバンドルは、ホストバンドルのサービスを拡張するための拡張アプリプログラムである。
【００１６】
図１（Ａ）に示すアプリケーション配信サーバ１０２とアプリケーション管理サーバ１０３とで、図１（Ｂ）に示す配信装置１００を構成することができる。配信装置１００は、アプリケーション配信部１０２Ａとアプリケーション管理部１０３Ａとを備える。アプリケーション配信部１０２Ａは、図１（Ａ）に示すアプリケーション配信サーバ１０２と同様の機能を有する。また、アプリケーション管理部１０３Ａは、図１（Ａ）に示すアプリケーション管理サーバ１０３と同様の機能を有する。そして、配信装置１００は、画像処理装置１０１にアプリケーションを配信する。
【００１７】
図２は、画像形成装置のハードウェア構成例を示す図である。画像形成装置１０１は、ＣＰＵ２０１乃至バス２１０を備える。ＣＰＵ（Central Processing Unit）２０１は、各種のコンピュータプログラムを実行して、画像形成装置１０１全体を制御する。
【００１８】
ＲＯＭ（Read Only Memory）２０２は、各種のコンピュータプログラムを記憶する。ＲＡＭ（Random Access Memory）２０３は、ＣＰＵ２０１が動作するためのシステムワークメモリであって、各種データを一時記憶する。ＣＰＵ２０１は、ＲＯＭ２０２に記憶されているプログラムをＲＡＭ２０３にロードし、プログラムを実行する。ＲＡＭ２０３は、記憶した内容を電源ｏｆｆ後も保持可能なＦＲＡＭ（登録商標）およびＳＲＡＭ、電源ｏｆｆ後に記憶内容が消去されるＤＲＡＭなどにより構成される。ＳＲＡＭは、Ｓｔａｔｉｃ  Ｒｏｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。ＤＲＡＭは、Ｄｙｎａｍｉｃ  Ｒｏｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。
【００１９】
ＨＤＤ（Hard Disk Drive ）２０４は、各種プログラムを記憶する。ＣＰＵ２０１は、ＨＤＤ２０４に記憶されているプログラムをＲＡＭ２０３にロードしプログラムを実行する。また、ＲＡＭ２０３のデータをＨＤＤ２０４に保存することもできる。
【００２０】
操作部２０５は、ユーザの操作に応じた入力情報を入力する。表示部２０６は、画像形成装置のＵＩを表示する。印刷部２０７は、バス２１０を介して、各ユニットとデータを送受信することが可能である。印刷部２０７は、ラスタイメージ等の各種イメージデータを記録媒体に印刷、または外部装置へ送信することが可能である。
【００２１】
スキャナ部２０８は、原稿台の上に置かれた原稿を読み取り、イメージデータを生成する。ネットワーク部２０９は、画像形成装置１０１をアプリケーション配信サーバ１０２に接続する。図２中に示す処理部は、バス２１０を介してデータの送受信を行うことが可能である。
【００２２】
図３は、アプリケーション配信サーバのハードウェア構成例を示す図である。アプリケーション配信サーバ１０２は、ＣＰＵ３０１乃至バス３０８を備える。ＣＰＵ３０１乃至表示部３０６は、図２中のＣＰＵ２０１乃至表示部２０６と同様である。また、バス３０８は、図２中のバス２１０と同様である。ネットワーク部３０７は、アプリケーション配信サーバ１０２を画像形成装置１０１とアプリケーション管理サーバ１０３とに接続する。
【００２３】
図４は、アプリケーション管理サーバのハードウェア構成例を示す図である。アプリケーション管理サーバ１０３は、ＣＰＵ４０１乃至バス４０８を備える。ＣＰＵ３０１乃至表示部３０６は、図２中のＣＰＵ２０１乃至表示部２０６と同様である。また、バス４０８は、図２中のバス２１０と同様である。ネットワーク部４０７は、アプリケーション管理サーバ１０３をアプリケーション配信サーバ１０２に接続する。
【００２４】
図５は、画像形成装置、アプリケーション配信サーバ、アプリケーション管理サーバの機能ブロック図の例である。図５（Ａ）は、画像形成装置１０１の機能ブロック図を示す。図５（Ａ）に示す各構成部を実現するプログラムは、ＨＤＤ２０４に記憶されている。そして、ＣＰＵ２０１が上記プログラムをＲＡＭ２０３にロードして実行することで、各構成部が実現される。
【００２５】
画像形成装置１０１は、アプリケーション取得アプリ５０２、インストーラ５０３、ＯＳＧｉフレームワーク５０４、仮想マシン５０５、ＯＳ５０６を備える。
【００２６】
アプリケーション取得アプリ５０２は、ネットワーク部２０９を介して、アプリケーション配信サーバ１０２からアプリケーションを取得する。また、アプリケーション取得アプリ５０２は、ユーザに対して、アプリケーションの取得指示するＵＩ（User Interface）を表示部２０６に表示する他、アプリケーションのインストール処理依頼を、インストーラ５０３に対して行う。
【００２７】
インストーラ５０３は、アプリケーション取得アプリ５０２から依頼されたアプリケーションのインストールを、ＯＳＧｉフレームワーク５０４に依頼する。ＯＳＧｉフレームワーク５０４は、インストーラ５０３からのインストール依頼において指定されたアプリケーションをインストールする他、アプリケーションの起動、および停止を行う。なお、ＯＳＧｉフレームワーク５０４は、ＯＳＧｉ  Ａｌｌｉａｎｃｅで定められた標準フレームワークの仕様に準拠し、拡張を行っている。
【００２８】
仮想マシン５０５は、アプリケーションを実行する。仮想マシン５０５は、例えば、Ｊａｖａ（登録商標）の仮想マシンなどにより実現される。すなわち、仮想マシン５０５は、第１の実行環境であるＯＳ５０６上で実現される実行環境であり、Ｊａｖａベースで記述されたアプリケーションを実行するための第２の実行環境である。このような実行環境を画像形成装置１０１に具備させることで、画像形成装置１０１が生産された後でも、画像形成装置１０１の印刷ユニット、またはスキャナユニットを制御するためのアプリケーションをインストール、および実行させることが可能になる。
【００２９】
ＯＳ５０６は、画像形成装置全体を制御する。ＯＳ５０６は、画像形成装置１０１の各種機能をリアルタイムに制御可能なリアルタイムＯＳの各モジュール、あるいは、クリティカルに画像形成装置のオプション装置、および拡張カードを含む各機能を制御することが可能なライブラリ群である。ＯＳは、その上位で動作するアプリケーションに対して、インタフェースコマンドを提供するモジュール群により実現される。
【００３０】
図５（Ｂ）は、アプリケーション配信サーバ１０２の機能ブロック図を示す。図５（Ｂ）に示す各構成部を実現するプログラムは、ＨＤＤ３０４に記憶されている。そして、ＣＰＵ３０１が上記プログラムをＲＡＭ３０３にロードして実行することで、各構成部が実現される。
【００３１】
アプリケーション配信サーバ１０２は、画面制御部５１１、情報処理部５１２、ＤＢ処理部５１３、ネットワーク処理部５１４を備える。画面制御部５１１は、配信するアプリケーションの登録メニュー表示の制御を行う。情報処理部５１２は、一時的な情報の保存や演算等を行う。ＤＢ処理部５１３は、配信するアプリケーションの登録を行う。ネットワーク処理部５１４は、画像形成装置１０１との通信処理、アプリケーション管理サーバ１０３との通信処理を行う。
【００３２】
図５（Ｃ）は、アプリケーション管理サーバ１０３の機能ブロック図を示す。図５（Ｃ）に示す各構成部を実現するプログラムは、ＨＤＤ４０４に記憶されている。そして、ＣＰＵ４０１が上記プログラムをＲＡＭ４０３にロードして実行することで、各構成部が実現される。
【００３３】
アプリケーション管理サーバ１０３は、画面制御部５２１、マニフェストファイル判別部５２２、情報処理部５２３、ＤＢ処理部５２４、ネットワーク処理部５２５を備える。画面制御部５２１は、アプリケーションの登録メニュー表示の制御を行う。マニフェストファイル判別部５２２は、登録するアプリケーションのマニフェストファイル情報を参照し、処理を行う。具体的には、マニフェストファイル判別部５２２は、後述するホストバンドルのマニフェストファイル６０４、フラグメントバンドルのマニフェストファイル６０６の情報を参照し処理を行う。
【００３４】
情報処理部５２３は、一時的な情報の保存や演算等を行う。ＤＢ処理部５２４は、アプリケーション管理サーバ１０３に保存しているＤＢ情報の参照や登録を行う。すなわち、ＤＢ処理部５１３は、ネットワーク１０４、アプリケーション配信サーバ１０２のＤＢ処理部５１３およびネットワーク処理部５２５を介し、画像形成装置１０１から、ホストバンドル、フラグメントバンドルの登録を受け付ける受付手段として機能する。ネットワーク処理部５２５は、アプリケーション配信サーバ１０２との通信処理を行う。
【００３５】
図１１および図１２は、ＤＢ情報の例を示す図である。図１１は、商品管理テーブル１１０１内のＤＢ情報を示す。商品管理テーブル１１０１は、アプリケーション管理サーバ１０３がＨＤＤ４０４に保持している商品の管理テーブルの一例である。アプリケーション管理サーバ１０３は、商品管理テーブル１１０１において、アプリ名１１０２と商品名１１０３、ライセンス番号１１０４とを紐付けて管理する。
【００３６】
ライセンス番号は、商品をユーザが購入後に入手する番号（ライセンスキー）である。ライセンス番号と画像形成装置１０１のシリアル番号を元に、アプリケーション管理サーバ１０３はライセンスを発行する。レコード（一行分のデータ）１１０５は、ホストバンドル１が商品１として登録されていて、ライセンス番号「１０００」が発行済みであることを示している。同様に、レコード１１０６は、フラグメントバンドル２が商品２として登録されていて、ライセンス番号「１００１」が発行済みであることを示している。
【００３７】
図１２は、アプリ管理テーブル１２０１内のＤＢ情報を示す。アプリ管理テーブル１２０１は、アプリケーション管理サーバ１０３がＨＤＤ４０４上に保持している、ホストバンドルとフラグメントバンドルの管理テーブルの一例である。アプリケーション管理サーバ１０３は、アプリ管理テーブル１２０１において、ホストバンドル名１２０２とフラグメントバンドル名１２０３とフラグメントバンドルの種類１２０４とを紐付けて管理する。この例では、種類１２０４は、当該フラグメントバンドルの種類を示す種類情報である。この例では、種類１２０４は、フラグメントバンドルが有償であるか無償であるかを示す。レコード１２０５は、ホストバンドル１には、無償のフラグメントバンドル１と有償のフラグメントバンドル２が紐付いていることを示す。
【００３８】
図６は、フラグメントバンドルの概念を説明する図である。図６に示す例では、ホストバンドル６０１に対して、ローカライズリソースをもつフラグメントバンドル６０２と６０３がインストールされるものとする。ホストバンドルにフラグメントバンドルをインストールするためには、以下のマニフェスト、及びバンドルパーミッションの指定が必要となる。バンドルパーミッションとは、アプリケーションに与えられたソフトウェアリソースへのアクセス権許可情報である。バンドルパーミッションに、それぞれホストバンドル、フラグメントバンドルを指定することで、アプリケーションに対してホストバンドル、フラグメントバンドルの許可情報が与えられる。
【００３９】
（ホストバンドルのマニフェスト６０４）
Ｂｕｎｄｌｅ−ＭａｎｉｆｅｓｔＶｅｒｓｉｏｎに２と指定する。
Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅには、フレームワーク内で一意な名前を付ける
（フラグメントバンドルのマニフェスト６０６）
Ｂｕｎｄｌｅ−ＭａｎｉｆｅｓｔＶｅｒｓｉｏｎに２と指定する。
Ｆｒａｇｍｅｎｔ−Ｈｏｓｔには、ホストバンドルのマニフェスト６０４に記載の＜ホストのバンドルシンボリック名＞を指定する。バンドルシンボリック名とは、ホストを一意に特定するための名称である。
（ホストバンドルのパーミッション６０５）
パーミッション６０５には、ＢｕｎｄｌｅＰｅｒｍｉｓｓｉｏｎ［バンドルシンボリック名，ＨＯＳＴ］と指定する。
（フラグメントバンドルのパーミッション６０７）
パーミッション６０７には、ＢｕｎｄｌｅＰｅｒｍｉｓｓｉｏｎ［バンドルシンボリック名，ＦＲＡＧＭＥＮＴ］と指定する。
【００４０】
上記条件を満足する状態で、フラグメントバンドルをインストールすると、ＯＳＧｉフレームワーク５０４が、フラグメントバンドルのマニフェスト情報からホストバンドルを特定する。そして、ＯＳＧｉフレームワーク５０４が、ホストバンドルのクラスパスにフラグメントバンドル自身のクラスパスの追加を行う。
【００４１】
ここで「クラスパス」とは、ＪＡＶＡアプリを実行するときに、ＪＡＶＡ  ＶＭがどの場所からクラスファイルを読み込めばよいかを、指定するためのものである。更に、ホストバンドルのクラスローダによって、フラグメントバンドル内の全てのクラスとリソースがロードされる。ここで、「クラスローダ」とは、クラスのロードやリソースの検索を担当するオブジェクトであり、全てのクラスはクラスローダによってＪＡＶＡ  ＶＭにロードされ、アプリから利用可能となる。
【００４２】
ホストバンドルのクラスローダのロードの実行は、ホストバンドル起動時に行われるため、必ずホストバンドルを一度停止し、クラスパスを追加したうえでロードする必要がある。したがって、ホストバンドルが停止していないときは、インストールに失敗する。フラグメントバンドルがインストールされた後は、ホストバンドルの一部として利用可能となる。
【００４３】
本実施形態では、フラグメントバンドルとして日本語リソース６０２、中国語リソース６０３が本体であるホストバンドル６０１にインストールされる。その後、ホストバンドル６０１が、これらの日本語、中国語リソースを利用して、リソースの言語切り替えが可能となる。フラグメントバンドルにより、このような言語リソースの追加だけでなく、ホストバンドルの機能の拡張も可能となる。
【００４４】
また、フラグメントバンドルのアンインストールについては、ホストバンドルのクラスパスにフラグメントバンドル自身のクラスパスの削除を行い、更に、ホストバンドルのクラスローダによって、再度ホストバンドルに必要なクラスをロードする必要がある。したがって、フラグメントバンドルのアンインストールは、必ずホストバンドルが停止した状態で行う必要がある。
【００４５】
図７は、アプリケーション管理サーバにおけるフラグメントバンドルの設定処理の例を説明するフローチャートである。ステップＳ７００で処理が開始される。アプリケーション管理サーバ１０３の画面制御部５２１が、アプリケーションの管理画面を表示する（ステップＳ７０１）。
【００４６】
図１４（Ａ）は、アプリケーションの管理画面の例である。図１４（Ａ）に示すアプリケーションの管理画面１４０１には、ホストバンドルの管理メニューが表示される。管理画面上には、管理項目として、削除１４０２、バージョンアップ設定１４０３、フラグメントバンドル設定メニュー１４０４が表示されている。ユーザが、フラグメントバンドル設定メニュー１４０４を押下すると、以下の処理が実行される。
【００４７】
マニフェストファイル判別部５２２が、ＤＢ処理部５２４から、管理メニューに対応するアプリのマニフェストファイルを取得する。そして、マニフェストファイル判別部５２２が、取得したマニフェストファイルに「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」属性があるかを判断する（ステップＳ７０２）。
【００４８】
取得したマニフェストファイルに「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」属性がない場合、アプリはホストバンドルではない。したがって、この場合には、画面制御部５２１が、フラグメントバンドルの設定メニューを非表示として（ステップＳ７０８）、処理を終了する（ステップＳ７１２）。
【００４９】
取得したマニフェストファイルに「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」属性がある場合、アプリはホストバンドルである。したがって、この場合には、情報処理部５２３が、値１として属性値をＲＡＭ４０３に記憶する（ステップＳ７０３）。
【００５０】
次に、ＤＢ処理部５２４が、登録済みアプリのうち、マニフェストファイルに「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」属性があるアプリがあるかを判断する（ステップＳ７０４）。
【００５１】
マニフェストファイルに「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」属性があるアプリがない場合は、フラグメントバンドルが存在しない。したがって、この場合には、処理がステップＳ７０８に進む。
【００５２】
マニフェストファイルに「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」属性があるアプリがある場合は、フラグメントバンドルが存在する。したがって、この場合には、情報処理部５２３が、ＲＡＭ４０３において、配列１に属性値を記憶する（ステップＳ７０５）。
【００５３】
次に、情報処理部５２３が、値１と配列１に格納した値で一致するものがあるかを判断する（ステップＳ７０６）。具体的には、情報処理部５２３は、アプリのマニフェストファイルの「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」の属性値と一致する「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」の属性値を持つフラグメントバンドルがあるかを判断する。
【００５４】
アプリのマニフェストファイルの「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」の属性値と一致する「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」の属性値を持つフラグメントバンドルがない場合、ホストバンドルに対応するフラグメントバンドルが存在しない。したがって、この場合には、処理がステップＳ７０８に進む。そして、画像制御部５２１が、フラグメントバンドルの設定メニューを非表示とした管理メニューを表示して、処理を終了する。
【００５５】
図１５は、図７のステップＳ７０８において表示される管理メニューの例である。管理メニュー１５０１においては、管理項目として、削除１５０２、バージョンアップ設定１５０３は表示されるが、フラグメントバンドルの設定メニューは表示されない。
【００５６】
図７に戻って、アプリのマニフェストファイルの「Ｂｕｎｄｌｅ−ＳｙｍｂｏｌｉｃＮａｍｅ」の属性値と一致する「Ｆｒａｇｍｅｎｔ−Ｈｏｓｔ」の属性値を持つフラグメントバンドルがある場合、ホストバンドルに対応するフラグメントバンドルが存在する。したがって、この場合には、画面制御部５２１が、フラグメントバンドルの設定画面を表示する（ステップＳ７０７）。
【００５７】
図１４（Ｂ）は、フラグメントバンドルの設定画面の例である。この設定画面上には、フラグメントバンドルの設定メニューが表示される。ユーザが無償設定１４０６を押下すると、図１４（Ｃ）に示す無償設定画面１４０８に遷移する。無償設定画面１４０８内の表示欄１４０９には、設定可能なフラグメントバンドルが一覧表示される。
【００５８】
ユーザが、フラグメントバンドルに対応する設定ボタンを押下すると、このフラグメントバンドルが無償設定される。つまり、アプリケーション管理サーバ１０３のＤＢ処理部５２４が、フラグメントバンドルの種類情報として無償を設定し、当該フラグメントバンドルをホストバンドルと紐付けて管理する。そして、図１４（Ｅ）に示す設定完了画面１４１２に遷移する。一方、ユーザが図１４（Ｂ）の設定画面１４０５上で、有償設定１４０７を押下すると、図１４（Ｄ）に示す有償設定画面に遷移する。表示欄１４１１には、設定可能なフラグメントバンドル一覧が表示される。ユーザが、設定ボタンを押下すると、ＤＢ処理部５２４が、当該設定ボタンに対応するフラグメントバンドルを有償設定する。そして、図１４（Ｅ）の設定完了画面１４１２に遷移する。
【００５９】
フラグメントバンドルを有償設定した場合、ＤＢ処理部５２４は、商品管理テーブル１１０１において、有償設定されたフラグメントバンドルを商品として登録する。その後、ＤＢ処理部５２４は、アプリ管理テーブル１２０１において、フラグメントバンドルに有償を設定し、ホストバンドルと紐付けて管理する。
【００６０】
図７に戻って、ＤＢ処理部５２４が、ユーザによって選択されたフラグメントバンドルの設定が有償か無償かを判断する（ステップＳ７０９）。設定が有償である場合、ＤＢ処理部５２４が、選択されたフラグメントバンドルを有償設定し（ステップＳ７１０）、処理を終了する（ステップＳ７１２）。設定が無償である場合、ＤＢ処理部５２４が、選択されたフラグメントバンドルを無償設定し（ステップＳ７１１）、処理を終了する（ステップＳ７１２）。フラグメントバンドルを無償設定した場合、ＤＢ処理部５２４は、アプリ管理テーブル１２０１において、フラグメントバンドルに対応する種類情報として、無償であることを示す情報を付与し、ホストバンドルに紐付けて管理する。
【００６１】
有償登録を行った場合、アプリケーション取得アプリ５０２は、表示部２０６から新しいライセンス番号を入力しない限り画像形成装置１０１にインストールさせないように制御を行う。無償登録を行った場合、アプリケーション取得アプリ５０２は、表示部２０６から新しいライセンス番号を入力しなくとも画像形成装置１０１にインストール可能とする制御を行う。
【００６２】
図７を参照して説明したことから、アプリケーション配信サーバ１０２が備えるＤＢ処理部５２４は、フラグメントバンドルが指定するホストバンドルが登録済みである場合、フラグメントバンドルを当該ホストバンドルと紐付くように管理する。
【００６３】
図８は、アプリケーションの管理サーバにおける、フラグメントバンドルの検索処理の例を説明するフローチャートである。
【００６４】
まず、アプリケーション管理サーバ１０３が、画像形成装置１０１からライセンス番号を受信して処理を開始する（ステップＳ８０１）。ＤＢ処理部５２４が、商品管理テーブル１１０１のＤＢ情報を参照して、受信したライセンス番号に対応するアプリ名を特定する（ステップＳ８０２）。
【００６５】
次に、情報処理部５２３が、ＲＡＭ４０３上にリストとしてアプリ名を記憶する（ステップＳ８０３）。続いて、情報処理部５２３が、ＲＡＭ４０３上に保存したアプリ名に対応するアプリにホストバンドルが含まれているかを判定する（ステップＳ８０４）。
【００６６】
ＲＡＭ４０３上に保存したアプリ名に対応するアプリにホストバンドルが含まれていない場合は、ステップＳ８０８に進んで、情報処理部５２３が、リストを返す。ＲＡＭ４０３上に保存したアプリ名に対応するアプリにホストバンドルが含まれている場合、ＤＢ処理部５２４が、アプリ管理テーブル１２０１を参照する（ステップＳ８０５）。そして、ＤＢ処理部５２４が、ホストバンドルに紐づくフラグメントバンドルが存在するかを判断する（ステップＳ８０６）。
【００６７】
ホストバンドルに紐づくフラグメントバンドルが存在しない場合は、処理がステップＳ８０８に進んで、情報処理部５２３が、リストを返す。ホストバンドルに紐づくフラグメントバンドルが存在する場合、情報処理部５２３はＲＡＭ４０３上にリストとしてフラグメントバンドルを記憶する（ステップＳ８０７）。そして、情報処理部５２３が、リストを返し（ステップＳ８０８）、処理を終了する（ステップＳ８０９）。
【００６８】
図９は、画像形成装置によるアプリケーションの取得処理の例を説明するフローチャートである。
まず、ステップＳ９００で処理が開始される。画像形成装置１０１のアプリケーション取得アプリ５０２が、ライセンス番号とシリアル番号とをアプリケーション配信サーバ１０２に送信する（ステップＳ９０１）。続いて、アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２からホストバンドルとフラグメントバンドルのリストを受信する（ステップＳ９０２）。
【００６９】
次に、アプリケーション取得アプリ５０２が、ユーザによってチェック（選択）されたアプリケーションのリストをアプリケーション配信サーバ１０２に送信する（ステップＳ９０３）。
【００７０】
次に、アプリケーション取得アプリ５０２が、アプリケーションとライセンスとをアプリケーション配信サーバ１０２から受信する（ステップＳ９０４）。そして、アプリケーション取得アプリ５０２が、受信したアプリケーションとライセンスをインストーラ５０３経由でインストールし（ステップＳ９０５）、処理を終了する（ステップＳ９０６）。
【００７１】
図１０は、画像形成装置によるインストール確認画面の表示処理の例を説明するフローチャートである。インストール確認画面は、画像形成装置１０１にインストールするアプリを選択するために用いられる画面である。
【００７２】
まず、アプリケーション取得アプリ５０２が、インストール確認画面を表示する（ステップＳ１００１）。アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２から受信したホストバンドルが画像形成装置１０１にインストール済みであるかを判断する。
【００７３】
アプリケーション配信サーバ１０２から受信したホストバンドルが画像形成装置１０１にインストール済みである場合、アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２から受信したアプリをすべて表示する（ステップＳ１００４）。
【００７４】
アプリケーション配信サーバ１０２から受信したホストバンドルが画像形成装置１０１にインストール済みでない場合、アプリケーション取得アプリ５０２が、ホストバンドルがインストール確認画面上で選択済みであるかを判断する（ステップＳ１００３）。ホストバンドルが選択済みでない場合、アプリケーション取得アプリ５０２が、受信したアプリケーションのうち、フラグメントバンドルのみインストール確認画面上でグレイアウトし（ステップＳ１００５）、処理を終了する（ステップＳ１００９）。
【００７５】
ホストバンドルが選択済みである場合は、処理がステップＳ１００４に進む。ステップＳ１００６において、アプリケーション取得アプリ５０２が、表示されたアプリケーションに有償のフラグメントバンドルがあるかを判断する（ステップＳ１００６）。有償のフラグメントバンドルがない場合は、処理を終了する（ステップＳ１００９）。
【００７６】
有償のフラグメントバンドルがある場合は、処理がステップＳ１００７に進む。そして、アプリケーション取得アプリ５０２が、有償のフラグメントバンドルが選択済みであるかを判断する。有償のフラグメントバンドルが選択済みでない場合は、処理を終了する（ステップＳ１００９）。有償のフラグメントバンドルが選択済みである場合は、アプリケーション取得アプリ５０２が、ライセンス番号入力ボックスを表示し（ステップＳ１００８）、処理を終了する。ライセンス番号入力ボックスは、ライセンス番号を入力するための入力欄である。ライセンス番号入力ボックスにライセンス番号が入力されない限り、アプリケーション配信サーバ１０２の情報処理部５２３は、有償のフラグメントバンドルを配信しない。すなわち、情報処理部５２３は、フラグメントバンドルの配信を、当該フラグメントバンドルの種類に応じて制御する。
【００７７】
図１３は、ライセンス番号の入力を通じたフラグメントバンドルの取得処理の例を説明するシーケンス図である。この例では、ユーザが、購入済みフラグメントバンドル商品のライセンス番号を画像形成装置１０１に入力することで、画像形成装置１０１が、関連するフラグメントバンドルをアプリケーション配信サーバ１０２から取得し、インストールする。
【００７８】
まず、画像形成装置１０１が、ユーザによって入力されたライセンス番号「１０００」をアプリケーション配信サーバ１０２経由でアプリケーション管理サーバ１０３に送信する（ステップＳ１３０１）。続いて、アプリケーション管理サーバ１０３が、商品管理テーブル１１０１を参照し、ライセンス番号「１０００」に該当する商品を特定する。図１１に示す商品管理テーブル１１０１の例では、ライセンス番号「１０００」は、ホストバンドル１の商品であることが特定できる。
【００７９】
次に、アプリケーション管理サーバ１０３が、アプリ管理テーブル１２０１を参照し、ホストバンドルと紐付くフラグメントバンドルを特定する。図１２に示すアプリ管理テーブル１２０１の例では、ホストバンドル１には、無償のフラグメントバンドル１と有償のフラグメントバンドル２が紐付いていることが特定できる。したがって、アプリケーション管理サーバ１０３は、アプリケーション配信サーバ１０２経由で、ホストバンドル１、無償のフラグメントバンドル１、有償のフラグメントバンドル２のリストを画像形成装置１０１に送信する（ステップＳ１３０３）。
【００８０】
次に、ユーザが、インストールするアプリケーションを選択する（ステップＳ１３０４）。そして、画像形成装置１０１が、ダウンロードするアプリケーションのリストをアプリケーション配信サーバ１０２に送信する（ステップＳ１３０５）。すなわち、画像形成装置１０１のアプリケーション取得アプリ５０２が、選択されたアプリケーションの配信をアプリケーション配信サーバ１０２に要求する。アプリケーション配信サーバ１０２の情報処理部５１２が、この要求をアプリケーション管理サーバ１０３に通知することで、ライセンスの発行を要求する。
【００８１】
次に、アプリケーション管理サーバ１０３が、ライセンスを発行する（ステップＳ１３０６）。そして、アプリケーション配信サーバ１０２が、アプリを発行する（ステップＳ１３０７）。続いて、アプリケーション配信サーバ１０２が備える情報処理部５１２が、発行されたアプリとライセンスとを画像形成装置１０１に送信する（ステップＳ１３０８）。そして、画像形成装置１０１が、受信したアプリとライセンスとをインストールする。
【００８２】
図８および図１３を参照して説明したことから、アプリケーション配信サーバ１０２が備える情報処理部５１２は、ライセンス番号から特定されるホストバンドルおよび／または当該ホストバンドルに紐付くフラグメントバンドルを画像形成装置１０１に配信する。
【００８３】
図１６は、アプリケーションの取得の際にアプリケーション取得アプリが表示する画面の例である。図１６（Ａ）は、ライセンス番号を入力するための入力画面１６０１を示す。
【００８４】
ユーザが入力欄１６０２にライセンス番号を入力する。ユーザが実行ボタンを押下すると、アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２に対して、ライセンス番号を送信する。
【００８５】
そして、アプリケーション取得アプリ５０２が、ライセンス番号に紐づいているアプリケーションのリストをアプリケーション配信サーバ１０２から受信し、図１６（Ｂ）に示す選択画面１６０３を表示する。選択画面１６０３は、リストに含まれるアプリケーションを選択するための画面である。この例では、アプリケーション取得アプリ５０２は、アプリケーション配信サーバ１０２から受信したリストにし含まれるフラグメントバンドルのうち、画像形成装置１０１の設定言語に適合するフラグメントバンドルを選択画面上に表示する。
【００８６】
入力欄１６０４は、インストール対象となるアプリを選択するための表示欄である。この例では、ホストバンドルであるアプリＡが画像形成装置１０１に未インストールであるものとする。したがって、フラグメントバンドルである無償の「言語・英語」と有償の「追加言語Ｘ」がグレイアウトされて選択できない。すなわち、アプリケーション取得アプリ５０２は、画像形成装置１０１にリストに含まれるホストバンドルがインストール済みでない場合に、以下の処理を実行する。アプリケーション取得アプリ５０２は、選択画面において当該ホストバンドルを選択しないと当該ホストバンドルに紐付くフラグメントバンドルを選択できないように表示制御する。
【００８７】
選択画面１６０３上で、ユーザが、アプリＡにチェックを入れると、アプリケーション取得アプリ５０２が、図１６（Ｃ）に示す入力画面１６０５を表示する。選択画面１６０５においては、ユーザは、フラグメントバンドルである無償の「言語・英語」と有償の「追加言語Ｘ」とを選択可能である。インストールするアプリケーションをユーザが選択して実行ボタンを押下すると、アプリケーション取得アプリ５０２が、選択されたアプリケーションの配信をアプリケーション配信サーバ１０２に対して要求する。そして、アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２から配信されたアプリケーションを受信してインストールし、図１６（Ｄ）に示すインストール完了画面を表示する。
【００８８】
図１７（Ａ）は、ホストバンドルであるアプリＡが画像形成装置１０１にインストール済みである場合にアプリケーション取得アプリ５０２が表示する選択画面１７０１を示す。選択画面１７０１上では、アプリＡを選択しなくても、無償の「言語・英語」と有償の「追加言語Ｘ」が選択可能である。すなわち、アプリケーション取得アプリ５０２は、選択画面においてホストバンドルを選択しなくても当該ホストバンドルに紐付くフラグメントバンドルを選択できるように表示制御する。図１７（Ｂ）は、ユーザが選択画面１７０１上でフラグメントバンドルのみにチェックを入れた状態を示す。ユーザが実行ボタンを押下すると、図１７（Ｃ）に示すインストール完了画面に遷移する。
【００８９】
また、図１７（Ａ）の選択画面１７０１上でユーザが、有償の「追加機能Ｘ」を選択すると、アプリケーション取得アプリ５０２が、図１８（Ａ）に示すように、ライセンス番号の入力を促す選択画面１８０１を表示する。具体的には、アプリケーション取得アプリ５０２は、ライセンス番号入力ボックス１８０２を表示する。ユーザが、追加で購入したライセンス番号をライセンス番号入力ボックス１８０２に入力後、実行ボタンを押下すると、アプリケーション取得アプリ５０２が、有償の「追加機能Ｘ」の配信をアプリケーション配信サーバ１０２に対して要求する。そして、アプリケーション取得アプリ５０２から配信された「追加機能Ｘ」をインストールすると、図１８（Ｂ）に示すインストール完了画面１８０３に遷移する。
【００９０】
図１９（Ａ）は、インストール済みのアプリの更新の際に表示される選択画面１９０１を示す。アプリケーション取得アプリ５０２が、ユーザの操作にしたがって、選択画面１９０１を表示する。アプリケーション取得アプリ５０２は、インストール済みのアプリ一覧を選択画面１９０１上に表示する。このために、アプリケーション取得アプリ５０２は、アプリの新規インストール時にライセンス番号をＨＤＤ２０４に記憶し、保持している。
【００９１】
ユーザが、選択画面１９０１上で、更新するアプリを選択し、実行することで、アプリケーション取得アプリ５０２が、予め内部に保持しているライセンス番号をアプリケーション配信サーバ１０２に送信する。これにより、ユーザはライセンス番号を新規インストール時以外は入力不要となる。
【００９２】
ユーザが、インストールするアプリをユーザが選択後に実行ボタンを押下すると、アプリケーション取得アプリ５０２が、図１９（Ｂ）に示す選択画面を表示する。ユーザが、図１９（Ｃ）に示すように、インストールするアプリをチェックし、実行ボタンを押下すると、図１９（Ｄ）のインストール完了画面に遷移する。
【００９３】
以上説明した本実施形態によれば、ホストバンドルとフラグメントバンドルとを紐付けて管理し、画像形成装置からの要求に応じて、ホストバンドルとフラグメントバンドルとを配信することができる。
【００９４】
図２０（Ａ）は、他の実施形態における、インストール対象のアプリを選択するための選択画面の例を示す。アプリケーション取得アプリ５０２が、フラグメントバンドルを予め決められた数の種類以上インストールできないように制御する。これにより、画像形成装置１０１のＨＤＤ容量等のリソースが制約される。
【００９５】
まず、図２０（Ａ）に示すように、アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２から受信したリスト内の複数のフラグメントバンドルを選択画面２００１上に表示する。この例では、フラグメントバンドルは、３種類を超えてインストールできないように予め設定されているものとする。すなわち、アプリケーション取得アプリ５０２は、予め決められた個数以上のフラグメントバンドルを選択できないように表示制御する。
【００９６】
ユーザが、英語、フランス語、イタリア語のそれぞれに対応する３種類のフラグメントバンドルを選択すると、アプリケーション取得アプリ５０２は、図２０（Ｂ）の選択画面２００２に示すように、残りのフラグメントバンドルをグレイアウトして選択不可とする。ユーザが実行ボタンを押下すると、図２０（Ｃ）に示すインストール完了画面２００３に遷移する。
【００９７】
アプリケーション取得アプリ５０２が、アプリケーション配信サーバ１０２から受信したリストに含まれるフラグメントバンドルを選択画面上に表示しないようにしてもよい。そして、アプリケーション取得アプリ５０２は、上記リストに含まれる全てのフラグメントバンドルの配信をアプリケーション配信サーバ１０２に対して要求するようにしてもよい。
【００９８】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００９９】
１０１  画像形成装置
１０２  アプリケーション配信サーバ
１０３  アプリケーション管理サーバ
【図１】
2014157529.tif 000003
【図２】
2014157529.tif 000004
【図３】
2014157529.tif 000005
【図４】
2014157529.tif 000006
【図５】
2014157529.tif 000007
【図６】
2014157529.tif 000008
【図７】
2014157529.tif 000009
【図８】
2014157529.tif 000010
【図９】
2014157529.tif 000011
【図１０】
2014157529.tif 000012
【図１１】
2014157529.tif 000013
【図１２】
2014157529.tif 000014
【図１３】
2014157529.tif 000015
【図１４】
2014157529.tif 000016
【図１５】
2014157529.tif 000017
【図１６】
2014157529.tif 000018
【図１７】
2014157529.tif 000019
【図１８】
2014157529.tif 000020
【図１９】
2014157529.tif 000021
【図２０】
2014157529.tif 000022