JP2014157529A - 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム - Google Patents

配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム Download PDF

Info

Publication number
JP2014157529A
JP2014157529A JP2013028658A JP2013028658A JP2014157529A JP 2014157529 A JP2014157529 A JP 2014157529A JP 2013028658 A JP2013028658 A JP 2013028658A JP 2013028658 A JP2013028658 A JP 2013028658A JP 2014157529 A JP2014157529 A JP 2014157529A
Authority
JP
Japan
Prior art keywords
application program
application
extended
bundle
distribution
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.)
Granted
Application number
JP2013028658A
Other languages
English (en)
Other versions
JP6103978B2 (ja
Inventor
Masanori Tsuboi
正徳 坪井
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2013028658A priority Critical patent/JP6103978B2/ja
Priority to US14/166,086 priority patent/US9323907B2/en
Publication of JP2014157529A publication Critical patent/JP2014157529A/ja
Application granted granted Critical
Publication of JP6103978B2 publication Critical patent/JP6103978B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1063Personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing

Landscapes

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

Abstract

【課題】アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、アプリプログラムと拡張アプリプログラムとを配信する仕組みを提供する。
【解決手段】画像形成装置101が、インストールされた画像形成装置において特定のサービスを提供するアプリプログラムと、拡張アプリプログラムの登録を受け付ける。画像形成装置101が、拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、拡張アプリプログラムを上記アプリプログラムと紐付くように管理する。そして、ライセンスキーが受信された場合、画像形成装置101が、ライセンスキーから特定されるアプリプログラムおよび/または上記アプリプログラムに紐付く拡張アプリプログラムを画像形成装置101に配信する。
【選択図】図1

Description

本発明は、アプリケーションをデバイス装置に配信する配信技術に関する。
アプリケーションの開始、停止など、アプリケーションのライフサイクルを管理するフレームワークとして、OSGi(Open Services Gateway initiative)AllianceからOSGiフレームワークが提唱されている。OSGiフレームワークでは、アプリケーションの形式をJava(登録商標)の圧縮フォーマットであるjarファイルとして規定している。jarファイルは、複数のクラスファイルをアーカイブとして1つにまとめたものである。jarファイルは、内部にMANIFEST.MF というマニフェストファイルを1つ持っており、jarファイルの説明が記載される。マニフェストファイルにOSGi仕様の属性を記載することで、OSGiフレームワークは、上記記載された属性に従って、アプリケーションのライフサイクルを管理する。
OSGiの仕様により、アプリ本体がホストバンドルと定義されている。また、ホストバンドルの修正または拡張部分(拡張アプリプログラム)が、フラグメントバンドルと定義されている。フラグメントバンドルは、単独では動作せず、ホストバンドルのクラスローダ空間にフラグメントバンドル自身を追加(アタッチ)するバンドルである。アプリの修正または拡張時に、フラグメントバンドルを用いて修正または拡張するようにすれば、差分のみリリース・評価を行うことが可能になるため、開発の効率化やテスト・評価工数の削減の実現が可能となる。
一方、画像形成装置において、アプリケーションを外部からインストールして搭載することが試みられており、OSGiフレームワークに準拠した仕組みを搭載した画像形成装置が提案されている。
特許文献1は、本体アプリのインストールに用いたライセンスファイルを記憶部に記憶し、このライセンスファイルを用いて拡張ファイルをインストールする情報処理装置を開示している。
特開2011−14106号公報
しかし、従来、アプリプログラムと、当該アプリプログラムに関連する拡張アプリプログラムとを合わせて配信することを可能とする配信装置は提案されていない。また、従来技術では、拡張アプリプログラムは、無条件でインストールができてしまい、拡張アプリプログラムの種類に応じて拡張アプリプログラムの配信を制御することはできない。したがって、従来技術では、例えば、有償提供/無償提供の拡張アプリプログラムを用意して、拡張アプリの種類に応じてインストールを制御することはできない。
本発明は、上記の課題の少なくとも一つを解決するためになされたものである。本発明は、アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、上記アプリプログラムと拡張アプリプログラムとを配信する仕組みの提供を目的とする。
本発明の一実施形態の配信装置は、デバイス装置にアプリプログラムを配信する配信装置であって、インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける受付手段と、前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する管理手段と、ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび/または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する配信手段とを有する。
本発明の配信装置によれば、アプリプログラムと、拡張アプリプログラムとを紐付けて管理し、デバイス装置からの要求に応じて、上記アプリプログラムと拡張アプリプログラムとを配信することができる。
本実施形態のシステム構成の一例を示す図である。 画像形成装置のハードウェア構成例を示す図である。 アプリケーション配信サーバのハードウェア構成例を示す図である。 アプリケーション管理サーバのハードウェア構成例を示す図である。 画像形成装置、アプリケーション配信サーバ、アプリケーション管理サーバの機能ブロック図の例である。 フラグメントバンドルの概念を説明する図である。 フラグメントバンドルの設定処理の例を説明する図である。 フラグメントバンドルの検索処理の例を説明する図である。 アプリケーションの取得処理の例を説明する図である。 インストール確認画面の表示処理の例を説明するフローチャートである。 商品管理テーブル内のDB情報である。 アプリ管理テーブル内のDB情報である。 フラグメントバンドルの取得処理の例を説明するシーケンス図である。 アプリケーションの管理画面、設定画面、設定完了画面の例である。 管理メニューの例である。 選択画面とインストール完了画面の例である。 選択画面とインストール完了画面の例である。 選択画面とインストール完了画面の例である。 選択画面とインストール完了画面の例である。 選択画面とインストール完了画面の例である。
以下に、図面を参照して、本実施形態について説明する。以下に説明する本実施形態の構成は、例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
図1は、本実施形態のシステム構成の一例を示す図である。図1(A)に示すシステムは、画像処理装置101と、アプリケーション配信サーバ102と、アプリケーション管理サーバ103とを備える。画像処理装置101とアプリケーション配信サーバ102とは、ネットワークを介して通信可能である。また、アプリケーション配信サーバ102とアプリケーション管理サーバ103とは、ネットワーク104を介して通信可能である。
画像処理装置は、プリンタ、スキャナ、コピー、FAXなどの機能を有するデバイス装置である。画像形成装置101は複数のアプリケーション(アプリプログラム)をインストール可能である。画像形成装置101は、画像形成装置に割り当てられた固有の機器IDを有する。なお、以下では、アプリケーションを単にアプリとも記述する。
アプリケーション配信サーバ102は、画像形成装置101にアプリケーションを配信する。アプリケーション管理サーバ103は、画像形成装置にインストールするアプリケーションの商品を登録して管理する。ネットワーク104は、例えばインターネットである。画像形成装置にインストールするアプリケーションは、例えば、ホストバンドルおよび/またはフラグメントバンドルである。ホストバンドルは、インストールされた装置において特定のサービスを提供するアプリプログラムである。フラグメントバンドルは、ホストバンドルのサービスを拡張するための拡張アプリプログラムである。
図1(A)に示すアプリケーション配信サーバ102とアプリケーション管理サーバ103とで、図1(B)に示す配信装置100を構成することができる。配信装置100は、アプリケーション配信部102Aとアプリケーション管理部103Aとを備える。アプリケーション配信部102Aは、図1(A)に示すアプリケーション配信サーバ102と同様の機能を有する。また、アプリケーション管理部103Aは、図1(A)に示すアプリケーション管理サーバ103と同様の機能を有する。そして、配信装置100は、画像処理装置101にアプリケーションを配信する。
図2は、画像形成装置のハードウェア構成例を示す図である。画像形成装置101は、CPU201乃至バス210を備える。CPU(Central Processing Unit)201は、各種のコンピュータプログラムを実行して、画像形成装置101全体を制御する。
ROM(Read Only Memory)202は、各種のコンピュータプログラムを記憶する。RAM(Random Access Memory)203は、CPU201が動作するためのシステムワークメモリであって、各種データを一時記憶する。CPU201は、ROM202に記憶されているプログラムをRAM203にロードし、プログラムを実行する。RAM203は、記憶した内容を電源off後も保持可能なFRAM(登録商標)およびSRAM、電源off後に記憶内容が消去されるDRAMなどにより構成される。SRAMは、Static Rondom Access Memoryの略称である。DRAMは、Dynamic Rondom Access Memoryの略称である。
HDD(Hard Disk Drive )204は、各種プログラムを記憶する。CPU201は、HDD204に記憶されているプログラムをRAM203にロードしプログラムを実行する。また、RAM203のデータをHDD204に保存することもできる。
操作部205は、ユーザの操作に応じた入力情報を入力する。表示部206は、画像形成装置のUIを表示する。印刷部207は、バス210を介して、各ユニットとデータを送受信することが可能である。印刷部207は、ラスタイメージ等の各種イメージデータを記録媒体に印刷、または外部装置へ送信することが可能である。
スキャナ部208は、原稿台の上に置かれた原稿を読み取り、イメージデータを生成する。ネットワーク部209は、画像形成装置101をアプリケーション配信サーバ102に接続する。図2中に示す処理部は、バス210を介してデータの送受信を行うことが可能である。
図3は、アプリケーション配信サーバのハードウェア構成例を示す図である。アプリケーション配信サーバ102は、CPU301乃至バス308を備える。CPU301乃至表示部306は、図2中のCPU201乃至表示部206と同様である。また、バス308は、図2中のバス210と同様である。ネットワーク部307は、アプリケーション配信サーバ102を画像形成装置101とアプリケーション管理サーバ103とに接続する。
図4は、アプリケーション管理サーバのハードウェア構成例を示す図である。アプリケーション管理サーバ103は、CPU401乃至バス408を備える。CPU301乃至表示部306は、図2中のCPU201乃至表示部206と同様である。また、バス408は、図2中のバス210と同様である。ネットワーク部407は、アプリケーション管理サーバ103をアプリケーション配信サーバ102に接続する。
図5は、画像形成装置、アプリケーション配信サーバ、アプリケーション管理サーバの機能ブロック図の例である。図5(A)は、画像形成装置101の機能ブロック図を示す。図5(A)に示す各構成部を実現するプログラムは、HDD204に記憶されている。そして、CPU201が上記プログラムをRAM203にロードして実行することで、各構成部が実現される。
画像形成装置101は、アプリケーション取得アプリ502、インストーラ503、OSGiフレームワーク504、仮想マシン505、OS506を備える。
アプリケーション取得アプリ502は、ネットワーク部209を介して、アプリケーション配信サーバ102からアプリケーションを取得する。また、アプリケーション取得アプリ502は、ユーザに対して、アプリケーションの取得指示するUI(User Interface)を表示部206に表示する他、アプリケーションのインストール処理依頼を、インストーラ503に対して行う。
インストーラ503は、アプリケーション取得アプリ502から依頼されたアプリケーションのインストールを、OSGiフレームワーク504に依頼する。OSGiフレームワーク504は、インストーラ503からのインストール依頼において指定されたアプリケーションをインストールする他、アプリケーションの起動、および停止を行う。なお、OSGiフレームワーク504は、OSGi Allianceで定められた標準フレームワークの仕様に準拠し、拡張を行っている。
仮想マシン505は、アプリケーションを実行する。仮想マシン505は、例えば、Java(登録商標)の仮想マシンなどにより実現される。すなわち、仮想マシン505は、第1の実行環境であるOS506上で実現される実行環境であり、Javaベースで記述されたアプリケーションを実行するための第2の実行環境である。このような実行環境を画像形成装置101に具備させることで、画像形成装置101が生産された後でも、画像形成装置101の印刷ユニット、またはスキャナユニットを制御するためのアプリケーションをインストール、および実行させることが可能になる。
OS506は、画像形成装置全体を制御する。OS506は、画像形成装置101の各種機能をリアルタイムに制御可能なリアルタイムOSの各モジュール、あるいは、クリティカルに画像形成装置のオプション装置、および拡張カードを含む各機能を制御することが可能なライブラリ群である。OSは、その上位で動作するアプリケーションに対して、インタフェースコマンドを提供するモジュール群により実現される。
図5(B)は、アプリケーション配信サーバ102の機能ブロック図を示す。図5(B)に示す各構成部を実現するプログラムは、HDD304に記憶されている。そして、CPU301が上記プログラムをRAM303にロードして実行することで、各構成部が実現される。
アプリケーション配信サーバ102は、画面制御部511、情報処理部512、DB処理部513、ネットワーク処理部514を備える。画面制御部511は、配信するアプリケーションの登録メニュー表示の制御を行う。情報処理部512は、一時的な情報の保存や演算等を行う。DB処理部513は、配信するアプリケーションの登録を行う。ネットワーク処理部514は、画像形成装置101との通信処理、アプリケーション管理サーバ103との通信処理を行う。
図5(C)は、アプリケーション管理サーバ103の機能ブロック図を示す。図5(C)に示す各構成部を実現するプログラムは、HDD404に記憶されている。そして、CPU401が上記プログラムをRAM403にロードして実行することで、各構成部が実現される。
アプリケーション管理サーバ103は、画面制御部521、マニフェストファイル判別部522、情報処理部523、DB処理部524、ネットワーク処理部525を備える。画面制御部521は、アプリケーションの登録メニュー表示の制御を行う。マニフェストファイル判別部522は、登録するアプリケーションのマニフェストファイル情報を参照し、処理を行う。具体的には、マニフェストファイル判別部522は、後述するホストバンドルのマニフェストファイル604、フラグメントバンドルのマニフェストファイル606の情報を参照し処理を行う。
情報処理部523は、一時的な情報の保存や演算等を行う。DB処理部524は、アプリケーション管理サーバ103に保存しているDB情報の参照や登録を行う。すなわち、DB処理部513は、ネットワーク104、アプリケーション配信サーバ102のDB処理部513およびネットワーク処理部525を介し、画像形成装置101から、ホストバンドル、フラグメントバンドルの登録を受け付ける受付手段として機能する。ネットワーク処理部525は、アプリケーション配信サーバ102との通信処理を行う。
図11および図12は、DB情報の例を示す図である。図11は、商品管理テーブル1101内のDB情報を示す。商品管理テーブル1101は、アプリケーション管理サーバ103がHDD404に保持している商品の管理テーブルの一例である。アプリケーション管理サーバ103は、商品管理テーブル1101において、アプリ名1102と商品名1103、ライセンス番号1104とを紐付けて管理する。
ライセンス番号は、商品をユーザが購入後に入手する番号(ライセンスキー)である。ライセンス番号と画像形成装置101のシリアル番号を元に、アプリケーション管理サーバ103はライセンスを発行する。レコード(一行分のデータ)1105は、ホストバンドル1が商品1として登録されていて、ライセンス番号「1000」が発行済みであることを示している。同様に、レコード1106は、フラグメントバンドル2が商品2として登録されていて、ライセンス番号「1001」が発行済みであることを示している。
図12は、アプリ管理テーブル1201内のDB情報を示す。アプリ管理テーブル1201は、アプリケーション管理サーバ103がHDD404上に保持している、ホストバンドルとフラグメントバンドルの管理テーブルの一例である。アプリケーション管理サーバ103は、アプリ管理テーブル1201において、ホストバンドル名1202とフラグメントバンドル名1203とフラグメントバンドルの種類1204とを紐付けて管理する。この例では、種類1204は、当該フラグメントバンドルの種類を示す種類情報である。この例では、種類1204は、フラグメントバンドルが有償であるか無償であるかを示す。レコード1205は、ホストバンドル1には、無償のフラグメントバンドル1と有償のフラグメントバンドル2が紐付いていることを示す。
図6は、フラグメントバンドルの概念を説明する図である。図6に示す例では、ホストバンドル601に対して、ローカライズリソースをもつフラグメントバンドル602と603がインストールされるものとする。ホストバンドルにフラグメントバンドルをインストールするためには、以下のマニフェスト、及びバンドルパーミッションの指定が必要となる。バンドルパーミッションとは、アプリケーションに与えられたソフトウェアリソースへのアクセス権許可情報である。バンドルパーミッションに、それぞれホストバンドル、フラグメントバンドルを指定することで、アプリケーションに対してホストバンドル、フラグメントバンドルの許可情報が与えられる。
(ホストバンドルのマニフェスト604)
Bundle−ManifestVersionに2と指定する。
Bundle−SymbolicNameには、フレームワーク内で一意な名前を付ける
(フラグメントバンドルのマニフェスト606)
Bundle−ManifestVersionに2と指定する。
Fragment−Hostには、ホストバンドルのマニフェスト604に記載の<ホストのバンドルシンボリック名>を指定する。バンドルシンボリック名とは、ホストを一意に特定するための名称である。
(ホストバンドルのパーミッション605)
パーミッション605には、BundlePermission[バンドルシンボリック名,HOST]と指定する。
(フラグメントバンドルのパーミッション607)
パーミッション607には、BundlePermission[バンドルシンボリック名,FRAGMENT]と指定する。
上記条件を満足する状態で、フラグメントバンドルをインストールすると、OSGiフレームワーク504が、フラグメントバンドルのマニフェスト情報からホストバンドルを特定する。そして、OSGiフレームワーク504が、ホストバンドルのクラスパスにフラグメントバンドル自身のクラスパスの追加を行う。
ここで「クラスパス」とは、JAVAアプリを実行するときに、JAVA VMがどの場所からクラスファイルを読み込めばよいかを、指定するためのものである。更に、ホストバンドルのクラスローダによって、フラグメントバンドル内の全てのクラスとリソースがロードされる。ここで、「クラスローダ」とは、クラスのロードやリソースの検索を担当するオブジェクトであり、全てのクラスはクラスローダによってJAVA VMにロードされ、アプリから利用可能となる。
ホストバンドルのクラスローダのロードの実行は、ホストバンドル起動時に行われるため、必ずホストバンドルを一度停止し、クラスパスを追加したうえでロードする必要がある。したがって、ホストバンドルが停止していないときは、インストールに失敗する。フラグメントバンドルがインストールされた後は、ホストバンドルの一部として利用可能となる。
本実施形態では、フラグメントバンドルとして日本語リソース602、中国語リソース603が本体であるホストバンドル601にインストールされる。その後、ホストバンドル601が、これらの日本語、中国語リソースを利用して、リソースの言語切り替えが可能となる。フラグメントバンドルにより、このような言語リソースの追加だけでなく、ホストバンドルの機能の拡張も可能となる。
また、フラグメントバンドルのアンインストールについては、ホストバンドルのクラスパスにフラグメントバンドル自身のクラスパスの削除を行い、更に、ホストバンドルのクラスローダによって、再度ホストバンドルに必要なクラスをロードする必要がある。したがって、フラグメントバンドルのアンインストールは、必ずホストバンドルが停止した状態で行う必要がある。
図7は、アプリケーション管理サーバにおけるフラグメントバンドルの設定処理の例を説明するフローチャートである。ステップS700で処理が開始される。アプリケーション管理サーバ103の画面制御部521が、アプリケーションの管理画面を表示する(ステップS701)。
図14(A)は、アプリケーションの管理画面の例である。図14(A)に示すアプリケーションの管理画面1401には、ホストバンドルの管理メニューが表示される。管理画面上には、管理項目として、削除1402、バージョンアップ設定1403、フラグメントバンドル設定メニュー1404が表示されている。ユーザが、フラグメントバンドル設定メニュー1404を押下すると、以下の処理が実行される。
マニフェストファイル判別部522が、DB処理部524から、管理メニューに対応するアプリのマニフェストファイルを取得する。そして、マニフェストファイル判別部522が、取得したマニフェストファイルに「Bundle−SymbolicName」属性があるかを判断する(ステップS702)。
取得したマニフェストファイルに「Bundle−SymbolicName」属性がない場合、アプリはホストバンドルではない。したがって、この場合には、画面制御部521が、フラグメントバンドルの設定メニューを非表示として(ステップS708)、処理を終了する(ステップS712)。
取得したマニフェストファイルに「Bundle−SymbolicName」属性がある場合、アプリはホストバンドルである。したがって、この場合には、情報処理部523が、値1として属性値をRAM403に記憶する(ステップS703)。
次に、DB処理部524が、登録済みアプリのうち、マニフェストファイルに「Fragment−Host」属性があるアプリがあるかを判断する(ステップS704)。
マニフェストファイルに「Fragment−Host」属性があるアプリがない場合は、フラグメントバンドルが存在しない。したがって、この場合には、処理がステップS708に進む。
マニフェストファイルに「Fragment−Host」属性があるアプリがある場合は、フラグメントバンドルが存在する。したがって、この場合には、情報処理部523が、RAM403において、配列1に属性値を記憶する(ステップS705)。
次に、情報処理部523が、値1と配列1に格納した値で一致するものがあるかを判断する(ステップS706)。具体的には、情報処理部523は、アプリのマニフェストファイルの「Bundle−SymbolicName」の属性値と一致する「Fragment−Host」の属性値を持つフラグメントバンドルがあるかを判断する。
アプリのマニフェストファイルの「Bundle−SymbolicName」の属性値と一致する「Fragment−Host」の属性値を持つフラグメントバンドルがない場合、ホストバンドルに対応するフラグメントバンドルが存在しない。したがって、この場合には、処理がステップS708に進む。そして、画像制御部521が、フラグメントバンドルの設定メニューを非表示とした管理メニューを表示して、処理を終了する。
図15は、図7のステップS708において表示される管理メニューの例である。管理メニュー1501においては、管理項目として、削除1502、バージョンアップ設定1503は表示されるが、フラグメントバンドルの設定メニューは表示されない。
図7に戻って、アプリのマニフェストファイルの「Bundle−SymbolicName」の属性値と一致する「Fragment−Host」の属性値を持つフラグメントバンドルがある場合、ホストバンドルに対応するフラグメントバンドルが存在する。したがって、この場合には、画面制御部521が、フラグメントバンドルの設定画面を表示する(ステップS707)。
図14(B)は、フラグメントバンドルの設定画面の例である。この設定画面上には、フラグメントバンドルの設定メニューが表示される。ユーザが無償設定1406を押下すると、図14(C)に示す無償設定画面1408に遷移する。無償設定画面1408内の表示欄1409には、設定可能なフラグメントバンドルが一覧表示される。
ユーザが、フラグメントバンドルに対応する設定ボタンを押下すると、このフラグメントバンドルが無償設定される。つまり、アプリケーション管理サーバ103のDB処理部524が、フラグメントバンドルの種類情報として無償を設定し、当該フラグメントバンドルをホストバンドルと紐付けて管理する。そして、図14(E)に示す設定完了画面1412に遷移する。一方、ユーザが図14(B)の設定画面1405上で、有償設定1407を押下すると、図14(D)に示す有償設定画面に遷移する。表示欄1411には、設定可能なフラグメントバンドル一覧が表示される。ユーザが、設定ボタンを押下すると、DB処理部524が、当該設定ボタンに対応するフラグメントバンドルを有償設定する。そして、図14(E)の設定完了画面1412に遷移する。
フラグメントバンドルを有償設定した場合、DB処理部524は、商品管理テーブル1101において、有償設定されたフラグメントバンドルを商品として登録する。その後、DB処理部524は、アプリ管理テーブル1201において、フラグメントバンドルに有償を設定し、ホストバンドルと紐付けて管理する。
図7に戻って、DB処理部524が、ユーザによって選択されたフラグメントバンドルの設定が有償か無償かを判断する(ステップS709)。設定が有償である場合、DB処理部524が、選択されたフラグメントバンドルを有償設定し(ステップS710)、処理を終了する(ステップS712)。設定が無償である場合、DB処理部524が、選択されたフラグメントバンドルを無償設定し(ステップS711)、処理を終了する(ステップS712)。フラグメントバンドルを無償設定した場合、DB処理部524は、アプリ管理テーブル1201において、フラグメントバンドルに対応する種類情報として、無償であることを示す情報を付与し、ホストバンドルに紐付けて管理する。
有償登録を行った場合、アプリケーション取得アプリ502は、表示部206から新しいライセンス番号を入力しない限り画像形成装置101にインストールさせないように制御を行う。無償登録を行った場合、アプリケーション取得アプリ502は、表示部206から新しいライセンス番号を入力しなくとも画像形成装置101にインストール可能とする制御を行う。
図7を参照して説明したことから、アプリケーション配信サーバ102が備えるDB処理部524は、フラグメントバンドルが指定するホストバンドルが登録済みである場合、フラグメントバンドルを当該ホストバンドルと紐付くように管理する。
図8は、アプリケーションの管理サーバにおける、フラグメントバンドルの検索処理の例を説明するフローチャートである。
まず、アプリケーション管理サーバ103が、画像形成装置101からライセンス番号を受信して処理を開始する(ステップS801)。DB処理部524が、商品管理テーブル1101のDB情報を参照して、受信したライセンス番号に対応するアプリ名を特定する(ステップS802)。
次に、情報処理部523が、RAM403上にリストとしてアプリ名を記憶する(ステップS803)。続いて、情報処理部523が、RAM403上に保存したアプリ名に対応するアプリにホストバンドルが含まれているかを判定する(ステップS804)。
RAM403上に保存したアプリ名に対応するアプリにホストバンドルが含まれていない場合は、ステップS808に進んで、情報処理部523が、リストを返す。RAM403上に保存したアプリ名に対応するアプリにホストバンドルが含まれている場合、DB処理部524が、アプリ管理テーブル1201を参照する(ステップS805)。そして、DB処理部524が、ホストバンドルに紐づくフラグメントバンドルが存在するかを判断する(ステップS806)。
ホストバンドルに紐づくフラグメントバンドルが存在しない場合は、処理がステップS808に進んで、情報処理部523が、リストを返す。ホストバンドルに紐づくフラグメントバンドルが存在する場合、情報処理部523はRAM403上にリストとしてフラグメントバンドルを記憶する(ステップS807)。そして、情報処理部523が、リストを返し(ステップS808)、処理を終了する(ステップS809)。
図9は、画像形成装置によるアプリケーションの取得処理の例を説明するフローチャートである。
まず、ステップS900で処理が開始される。画像形成装置101のアプリケーション取得アプリ502が、ライセンス番号とシリアル番号とをアプリケーション配信サーバ102に送信する(ステップS901)。続いて、アプリケーション取得アプリ502が、アプリケーション配信サーバ102からホストバンドルとフラグメントバンドルのリストを受信する(ステップS902)。
次に、アプリケーション取得アプリ502が、ユーザによってチェック(選択)されたアプリケーションのリストをアプリケーション配信サーバ102に送信する(ステップS903)。
次に、アプリケーション取得アプリ502が、アプリケーションとライセンスとをアプリケーション配信サーバ102から受信する(ステップS904)。そして、アプリケーション取得アプリ502が、受信したアプリケーションとライセンスをインストーラ503経由でインストールし(ステップS905)、処理を終了する(ステップS906)。
図10は、画像形成装置によるインストール確認画面の表示処理の例を説明するフローチャートである。インストール確認画面は、画像形成装置101にインストールするアプリを選択するために用いられる画面である。
まず、アプリケーション取得アプリ502が、インストール確認画面を表示する(ステップS1001)。アプリケーション取得アプリ502が、アプリケーション配信サーバ102から受信したホストバンドルが画像形成装置101にインストール済みであるかを判断する。
アプリケーション配信サーバ102から受信したホストバンドルが画像形成装置101にインストール済みである場合、アプリケーション取得アプリ502が、アプリケーション配信サーバ102から受信したアプリをすべて表示する(ステップS1004)。
アプリケーション配信サーバ102から受信したホストバンドルが画像形成装置101にインストール済みでない場合、アプリケーション取得アプリ502が、ホストバンドルがインストール確認画面上で選択済みであるかを判断する(ステップS1003)。ホストバンドルが選択済みでない場合、アプリケーション取得アプリ502が、受信したアプリケーションのうち、フラグメントバンドルのみインストール確認画面上でグレイアウトし(ステップS1005)、処理を終了する(ステップS1009)。
ホストバンドルが選択済みである場合は、処理がステップS1004に進む。ステップS1006において、アプリケーション取得アプリ502が、表示されたアプリケーションに有償のフラグメントバンドルがあるかを判断する(ステップS1006)。有償のフラグメントバンドルがない場合は、処理を終了する(ステップS1009)。
有償のフラグメントバンドルがある場合は、処理がステップS1007に進む。そして、アプリケーション取得アプリ502が、有償のフラグメントバンドルが選択済みであるかを判断する。有償のフラグメントバンドルが選択済みでない場合は、処理を終了する(ステップS1009)。有償のフラグメントバンドルが選択済みである場合は、アプリケーション取得アプリ502が、ライセンス番号入力ボックスを表示し(ステップS1008)、処理を終了する。ライセンス番号入力ボックスは、ライセンス番号を入力するための入力欄である。ライセンス番号入力ボックスにライセンス番号が入力されない限り、アプリケーション配信サーバ102の情報処理部523は、有償のフラグメントバンドルを配信しない。すなわち、情報処理部523は、フラグメントバンドルの配信を、当該フラグメントバンドルの種類に応じて制御する。
図13は、ライセンス番号の入力を通じたフラグメントバンドルの取得処理の例を説明するシーケンス図である。この例では、ユーザが、購入済みフラグメントバンドル商品のライセンス番号を画像形成装置101に入力することで、画像形成装置101が、関連するフラグメントバンドルをアプリケーション配信サーバ102から取得し、インストールする。
まず、画像形成装置101が、ユーザによって入力されたライセンス番号「1000」をアプリケーション配信サーバ102経由でアプリケーション管理サーバ103に送信する(ステップS1301)。続いて、アプリケーション管理サーバ103が、商品管理テーブル1101を参照し、ライセンス番号「1000」に該当する商品を特定する。図11に示す商品管理テーブル1101の例では、ライセンス番号「1000」は、ホストバンドル1の商品であることが特定できる。
次に、アプリケーション管理サーバ103が、アプリ管理テーブル1201を参照し、ホストバンドルと紐付くフラグメントバンドルを特定する。図12に示すアプリ管理テーブル1201の例では、ホストバンドル1には、無償のフラグメントバンドル1と有償のフラグメントバンドル2が紐付いていることが特定できる。したがって、アプリケーション管理サーバ103は、アプリケーション配信サーバ102経由で、ホストバンドル1、無償のフラグメントバンドル1、有償のフラグメントバンドル2のリストを画像形成装置101に送信する(ステップS1303)。
次に、ユーザが、インストールするアプリケーションを選択する(ステップS1304)。そして、画像形成装置101が、ダウンロードするアプリケーションのリストをアプリケーション配信サーバ102に送信する(ステップS1305)。すなわち、画像形成装置101のアプリケーション取得アプリ502が、選択されたアプリケーションの配信をアプリケーション配信サーバ102に要求する。アプリケーション配信サーバ102の情報処理部512が、この要求をアプリケーション管理サーバ103に通知することで、ライセンスの発行を要求する。
次に、アプリケーション管理サーバ103が、ライセンスを発行する(ステップS1306)。そして、アプリケーション配信サーバ102が、アプリを発行する(ステップS1307)。続いて、アプリケーション配信サーバ102が備える情報処理部512が、発行されたアプリとライセンスとを画像形成装置101に送信する(ステップS1308)。そして、画像形成装置101が、受信したアプリとライセンスとをインストールする。
図8および図13を参照して説明したことから、アプリケーション配信サーバ102が備える情報処理部512は、ライセンス番号から特定されるホストバンドルおよび/または当該ホストバンドルに紐付くフラグメントバンドルを画像形成装置101に配信する。
図16は、アプリケーションの取得の際にアプリケーション取得アプリが表示する画面の例である。図16(A)は、ライセンス番号を入力するための入力画面1601を示す。
ユーザが入力欄1602にライセンス番号を入力する。ユーザが実行ボタンを押下すると、アプリケーション取得アプリ502が、アプリケーション配信サーバ102に対して、ライセンス番号を送信する。
そして、アプリケーション取得アプリ502が、ライセンス番号に紐づいているアプリケーションのリストをアプリケーション配信サーバ102から受信し、図16(B)に示す選択画面1603を表示する。選択画面1603は、リストに含まれるアプリケーションを選択するための画面である。この例では、アプリケーション取得アプリ502は、アプリケーション配信サーバ102から受信したリストにし含まれるフラグメントバンドルのうち、画像形成装置101の設定言語に適合するフラグメントバンドルを選択画面上に表示する。
入力欄1604は、インストール対象となるアプリを選択するための表示欄である。この例では、ホストバンドルであるアプリAが画像形成装置101に未インストールであるものとする。したがって、フラグメントバンドルである無償の「言語・英語」と有償の「追加言語X」がグレイアウトされて選択できない。すなわち、アプリケーション取得アプリ502は、画像形成装置101にリストに含まれるホストバンドルがインストール済みでない場合に、以下の処理を実行する。アプリケーション取得アプリ502は、選択画面において当該ホストバンドルを選択しないと当該ホストバンドルに紐付くフラグメントバンドルを選択できないように表示制御する。
選択画面1603上で、ユーザが、アプリAにチェックを入れると、アプリケーション取得アプリ502が、図16(C)に示す入力画面1605を表示する。選択画面1605においては、ユーザは、フラグメントバンドルである無償の「言語・英語」と有償の「追加言語X」とを選択可能である。インストールするアプリケーションをユーザが選択して実行ボタンを押下すると、アプリケーション取得アプリ502が、選択されたアプリケーションの配信をアプリケーション配信サーバ102に対して要求する。そして、アプリケーション取得アプリ502が、アプリケーション配信サーバ102から配信されたアプリケーションを受信してインストールし、図16(D)に示すインストール完了画面を表示する。
図17(A)は、ホストバンドルであるアプリAが画像形成装置101にインストール済みである場合にアプリケーション取得アプリ502が表示する選択画面1701を示す。選択画面1701上では、アプリAを選択しなくても、無償の「言語・英語」と有償の「追加言語X」が選択可能である。すなわち、アプリケーション取得アプリ502は、選択画面においてホストバンドルを選択しなくても当該ホストバンドルに紐付くフラグメントバンドルを選択できるように表示制御する。図17(B)は、ユーザが選択画面1701上でフラグメントバンドルのみにチェックを入れた状態を示す。ユーザが実行ボタンを押下すると、図17(C)に示すインストール完了画面に遷移する。
また、図17(A)の選択画面1701上でユーザが、有償の「追加機能X」を選択すると、アプリケーション取得アプリ502が、図18(A)に示すように、ライセンス番号の入力を促す選択画面1801を表示する。具体的には、アプリケーション取得アプリ502は、ライセンス番号入力ボックス1802を表示する。ユーザが、追加で購入したライセンス番号をライセンス番号入力ボックス1802に入力後、実行ボタンを押下すると、アプリケーション取得アプリ502が、有償の「追加機能X」の配信をアプリケーション配信サーバ102に対して要求する。そして、アプリケーション取得アプリ502から配信された「追加機能X」をインストールすると、図18(B)に示すインストール完了画面1803に遷移する。
図19(A)は、インストール済みのアプリの更新の際に表示される選択画面1901を示す。アプリケーション取得アプリ502が、ユーザの操作にしたがって、選択画面1901を表示する。アプリケーション取得アプリ502は、インストール済みのアプリ一覧を選択画面1901上に表示する。このために、アプリケーション取得アプリ502は、アプリの新規インストール時にライセンス番号をHDD204に記憶し、保持している。
ユーザが、選択画面1901上で、更新するアプリを選択し、実行することで、アプリケーション取得アプリ502が、予め内部に保持しているライセンス番号をアプリケーション配信サーバ102に送信する。これにより、ユーザはライセンス番号を新規インストール時以外は入力不要となる。
ユーザが、インストールするアプリをユーザが選択後に実行ボタンを押下すると、アプリケーション取得アプリ502が、図19(B)に示す選択画面を表示する。ユーザが、図19(C)に示すように、インストールするアプリをチェックし、実行ボタンを押下すると、図19(D)のインストール完了画面に遷移する。
以上説明した本実施形態によれば、ホストバンドルとフラグメントバンドルとを紐付けて管理し、画像形成装置からの要求に応じて、ホストバンドルとフラグメントバンドルとを配信することができる。
図20(A)は、他の実施形態における、インストール対象のアプリを選択するための選択画面の例を示す。アプリケーション取得アプリ502が、フラグメントバンドルを予め決められた数の種類以上インストールできないように制御する。これにより、画像形成装置101のHDD容量等のリソースが制約される。
まず、図20(A)に示すように、アプリケーション取得アプリ502が、アプリケーション配信サーバ102から受信したリスト内の複数のフラグメントバンドルを選択画面2001上に表示する。この例では、フラグメントバンドルは、3種類を超えてインストールできないように予め設定されているものとする。すなわち、アプリケーション取得アプリ502は、予め決められた個数以上のフラグメントバンドルを選択できないように表示制御する。
ユーザが、英語、フランス語、イタリア語のそれぞれに対応する3種類のフラグメントバンドルを選択すると、アプリケーション取得アプリ502は、図20(B)の選択画面2002に示すように、残りのフラグメントバンドルをグレイアウトして選択不可とする。ユーザが実行ボタンを押下すると、図20(C)に示すインストール完了画面2003に遷移する。
アプリケーション取得アプリ502が、アプリケーション配信サーバ102から受信したリストに含まれるフラグメントバンドルを選択画面上に表示しないようにしてもよい。そして、アプリケーション取得アプリ502は、上記リストに含まれる全てのフラグメントバンドルの配信をアプリケーション配信サーバ102に対して要求するようにしてもよい。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
101 画像形成装置
102 アプリケーション配信サーバ
103 アプリケーション管理サーバ

Claims (13)

  1. デバイス装置にアプリプログラムを配信する配信装置であって、
    インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける受付手段と、
    前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する管理手段と、
    ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび/または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する配信手段とを有する配信装置。
  2. 前記配信手段は、前記アプリプログラムに紐付く拡張アプリプログラムの配信を、当該拡張アプリプログラムの種類に応じて制御する
    ことを特徴とする請求項1に記載の配信装置。
  3. 前記管理手段は、
    前記拡張アプリプログラムを当該拡張アプリプログラムの種類情報とともに前記アプリプログラムと紐付けて管理し、
    前記アプリプログラムを前記ライセンスキーと紐付けて管理し、
    前記配信手段は、前記受信されたライセンスキーと紐付けて管理されているアプリプログラムを特定し、前記特定されたアプリプログラムと紐付けて管理されている拡張アプリプログラムを配信する
    ことを特徴とする請求項1または請求項2に記載の配信装置。
  4. 前記アプリプログラムの管理画面を表示する表示手段を備え、
    前記表示手段は、前記管理画面上での操作に応じて、前記アプリプログラムを指定する拡張アプリプログラムの設定画面を表示し、
    前記管理手段は、前記設定画面上で選択された前記拡張アプリプログラムを前記アプリプログラムと紐付けて管理する
    ことを特徴とする請求項1乃至3のいずれか1項に記載の配信装置。
  5. 請求項1乃至3のいずれか1項に記載の配信装置からアプリプログラムの配信を受けるデバイス装置であって、
    前記ライセンスキーを前記配信装置に送信する送信手段と、
    前記配信装置から、前記ライセンスキーから特定されるアプリプログラムと、当該アプリプログラムに紐付く拡張アプリプログラムとのリストを受信して、当該リストに含まれるアプリプログラムと拡張アプリプログラムの選択画面を表示する表示手段と、
    前記選択画面上で選択されたアプリプログラムまたは拡張アプリプログラムの配信を前記配信装置に対して要求する要求手段と、
    前記要求に応じた前記配信装置から配信された前記アプリプログラムまたは拡張アプリプログラムを受信する受信手段とを備える
    ことを特徴とするデバイス装置。
  6. 前記表示手段は、前記リストに含まれる拡張アプリプログラムのうち、前記デバイス装置の設定言語に適合する拡張アプリプログラムを前記選択画面上に表示する
    ことを特徴とする請求項5に記載のデバイス装置。
  7. 前記表示手段は、前記選択画面において、前記リストに含まれる拡張アプリプログラムのうち、予め決められた個数以上の拡張アプリプログラムを選択できないように表示制御する
    ことを特徴とする請求項5または請求項6に記載のデバイス装置。
  8. 前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みでない場合に、前記選択画面において当該アプリプログラムを選択しないと当該アプリプログラムに紐付く拡張アプリプログラムを選択できないように表示制御する
    ことを特徴とする請求項5乃至7のいずれか1項に記載のデバイス装置。
  9. 前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みである場合に、前記選択画面において当該アプリプログラムを選択しなくても当該アプリプログラムに紐付く拡張アプリプログラムを選択できるように表示制御する
    ことを特徴とする請求項5乃至8のいずれか1項に記載のデバイス装置。
  10. 前記表示手段は、前記デバイス装置に前記リストに含まれるアプリプログラムがインストール済みである場合であって、前記選択画面において選択された拡張アプリプログラムが有償であるときに、ライセンスキーの入力欄を表示し、
    前記要求手段は、前記ライセンスキーの入力欄に前記ライセンスキーが入力された場合に、前記有償の拡張アプリプログラムの配信を前記配信装置に対して要求する
    ことを特徴とする請求項5乃至9のいずれか1項に記載のデバイス装置。
  11. 前記表示手段は、前記リストに含まれる拡張アプリプログラムを前記選択画面上に表示せず、
    前記要求手段は、前記リストに含まれる全ての拡張アプリプログラムの配信を前記配信装置に対して要求する
    ことを特徴とする請求項5に記載のデバイス装置。
  12. デバイス装置にアプリプログラムを配信する配信装置の制御方法であって、
    インストールされたデバイス装置において特定のサービスを提供するアプリプログラムと、前記アプリプログラムのサービスを拡張するための拡張アプリプログラムの登録を受け付ける工程と、
    前記拡張アプリプログラムにより指定されるアプリプログラムが登録されている場合、前記拡張アプリプログラムを当該アプリプログラムと紐付くように管理する工程と、
    ライセンスキーが受信された場合、前記ライセンスキーから特定されるアプリプログラムおよび/または当該アプリプログラムに紐付く拡張アプリプログラムを前記デバイス装置に配信する工程とを有することを特徴とする制御方法。
  13. 請求項12に記載の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
JP2013028658A 2013-02-18 2013-02-18 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム Active JP6103978B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013028658A JP6103978B2 (ja) 2013-02-18 2013-02-18 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム
US14/166,086 US9323907B2 (en) 2013-02-18 2014-01-28 Distribution apparatus, device, control method for distribution apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013028658A JP6103978B2 (ja) 2013-02-18 2013-02-18 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2014157529A true JP2014157529A (ja) 2014-08-28
JP6103978B2 JP6103978B2 (ja) 2017-03-29

Family

ID=51352325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013028658A Active JP6103978B2 (ja) 2013-02-18 2013-02-18 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US9323907B2 (ja)
JP (1) JP6103978B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018060396A (ja) * 2016-10-06 2018-04-12 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
JP2021193606A (ja) * 2020-09-29 2021-12-23 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 深層学習に基づく演算子の登録処理方法、装置及び電子機器

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6882645B2 (ja) * 2016-10-06 2021-06-02 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004265061A (ja) * 2003-02-28 2004-09-24 Canon Inc プログラムインストール方法、装置、及びシステム
JP2005311907A (ja) * 2004-04-23 2005-11-04 Matsushita Electric Ind Co Ltd 複合機及び機能拡張方法
JP2010067230A (ja) * 2008-09-12 2010-03-25 Ricoh Co Ltd 画像形成装置、ライセンス判定方法、及びプログラム
JP2011253417A (ja) * 2010-06-03 2011-12-15 Ricoh Co Ltd 情報処理装置、プログラム導入支援方法、及びプログラム導入支援プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030167320A1 (en) * 2002-02-26 2003-09-04 Sun Microsystems, Inc. Registration service for registering plug-in applications with a management console
US7877329B2 (en) * 2005-09-23 2011-01-25 Business Objects Software Ltd. Apparatus and method for processing license keys using dynamic field mapping
JP5460150B2 (ja) 2009-07-06 2014-04-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及び、プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004265061A (ja) * 2003-02-28 2004-09-24 Canon Inc プログラムインストール方法、装置、及びシステム
JP2005311907A (ja) * 2004-04-23 2005-11-04 Matsushita Electric Ind Co Ltd 複合機及び機能拡張方法
JP2010067230A (ja) * 2008-09-12 2010-03-25 Ricoh Co Ltd 画像形成装置、ライセンス判定方法、及びプログラム
JP2011253417A (ja) * 2010-06-03 2011-12-15 Ricoh Co Ltd 情報処理装置、プログラム導入支援方法、及びプログラム導入支援プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018060396A (ja) * 2016-10-06 2018-04-12 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
JP2021193606A (ja) * 2020-09-29 2021-12-23 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 深層学習に基づく演算子の登録処理方法、装置及び電子機器
JP7248756B2 (ja) 2020-09-29 2023-03-29 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 深層学習に基づく演算子の登録処理方法、装置及び電子機器

Also Published As

Publication number Publication date
US20140237613A1 (en) 2014-08-21
JP6103978B2 (ja) 2017-03-29
US9323907B2 (en) 2016-04-26

Similar Documents

Publication Publication Date Title
JP6774499B2 (ja) オフラインでのハイブリッドアプリケーションへのアクセスの提供
JP4958671B2 (ja) ライセンス管理装置、ライセンス管理方法、及びコンピュータプログラム
US20150128133A1 (en) Virtual appliance integration with cloud management software
US9880836B2 (en) System and method for deploying a software program
US9417862B2 (en) Information processing apparatus, function extension method for information processing apparatus, and non-transitory computer-readable storage medium
JP2011076605A (ja) 仮想マシン・イメージの実行方法及びシステム
JP2011060035A (ja) アプリケーションデプロイシステム、アプリケーションデプロイ方法及びプログラム
JP7231518B2 (ja) パッケージ化支援システムおよびパッケージ化支援方法
JP2012185794A (ja) 管理装置及び管理方法、管理システムとネットワークデバイス
CN111984261A (zh) 编译方法与编译系统
JP6147139B2 (ja) 情報処理装置、その制御方法、及びコンピュータプログラム
JP2015205499A (ja) 画像処理装置、画像処理装置の制御方法およびプログラム
JP2017027277A (ja) 情報処理装置、方法およびプログラム
JP2006099307A (ja) 分散サーバへのアプリケーションセットのインストール方法
JP6103978B2 (ja) 配信装置、デバイス装置、配信装置の制御方法およびコンピュータプログラム
JP2012155478A (ja) 画像形成装置、装置、画像形成装置の制御方法、およびプログラム
JP5178319B2 (ja) アプリケーションプラットフォーム
EP3462363B1 (en) Image forming apparatus and control method therefor
JP2009199458A (ja) デバイス管理システム、サーバ、デバイス管理方法、プログラム
US20130067452A1 (en) Management server, host device, and application management method
JP6057740B2 (ja) 画像形成装置、情報処理方法及びプログラム
JP2014032687A (ja) 統合管理装置、制御方法及びプログラム
JP5766065B2 (ja) 管理システム、サーバ装置、管理方法およびコンピュータプログラム
CN109388356B (zh) 图像形成装置、其控制方法和计算机可读介质
JP5471198B2 (ja) 統合管理装置、統合管理システム、統合管理方法、統合管理プログラム、及びそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161214

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: 20170131

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170228

R151 Written notification of patent or utility model registration

Ref document number: 6103978

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151