JP2011150430A - Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program - Google Patents
Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program Download PDFInfo
- Publication number
- JP2011150430A JP2011150430A JP2010009426A JP2010009426A JP2011150430A JP 2011150430 A JP2011150430 A JP 2011150430A JP 2010009426 A JP2010009426 A JP 2010009426A JP 2010009426 A JP2010009426 A JP 2010009426A JP 2011150430 A JP2011150430 A JP 2011150430A
- Authority
- JP
- Japan
- Prior art keywords
- sdk
- distribution package
- binary
- generating
- source file
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、SDK配布パッケージ生成装置、SDK配布パッケージ生成方法、およびSDK配布パッケージ生成プログラムに関するものである。 The present invention relates to an SDK distribution package generation device, an SDK distribution package generation method, and an SDK distribution package generation program.
複合機などの画像形成装置には、アプリケーションプログラムを追加インストール可能なものがある(例えば特許文献1参照)。近年、複合機などの画像形成装置と連携するソリューションが市場において増加しており、そのようなソリューションを実現するために、画像形成装置にアプリケーションプログラムがインストールされることがある。 Some image forming apparatuses such as multifunction peripherals can additionally install application programs (see, for example, Patent Document 1). In recent years, solutions that cooperate with image forming apparatuses such as multifunction peripherals have increased in the market, and application programs are sometimes installed in image forming apparatuses in order to realize such solutions.
そのようなアプリケーションプログラムは、画像形成装置のメーカや、販売会社と協業するサードパーティ(ソフトウェアベンダ)により作成される。サードパーティがアプリケーションプログラムを作成する場合、例えば、画像形成装置のメーカが、ソフトウェア開発キット(SDK:Software Development Kit)をサードパーティへ提供し、サードパーティは、そのSDKを使用してアプリケーションプログラムを作成する。 Such an application program is created by the manufacturer of the image forming apparatus or a third party (software vendor) that cooperates with the sales company. When a third party creates an application program, for example, the manufacturer of the image forming apparatus provides a software development kit (SDK) to the third party, and the third party creates the application program using the SDK. To do.
サードパーティにSDKを配布する場合、そのSDKのライセンス(使用許諾)をサードパーティに与えることになる。したがって、そのサードパーティに対するライセンスに応じて、パスワード、使用期限などのライセンス条件をSDKに設定し、ライセンス条件を設定されたSDKをそのサードパーティに提供する。 When distributing an SDK to a third party, the SDK license (license) is given to the third party. Therefore, according to the license for the third party, the license conditions such as the password and the expiration date are set in the SDK, and the SDK in which the license conditions are set is provided to the third party.
ライセンス条件は、サードパーティによって異なることが多いため、一律な設定とすることができず、SDKの提供先ごとに、メーカの開発者がSDKにライセンス条件設定を行う必要がある。このため、SDK開発時にメーカの開発者に、ライセンス条件設定のための作業負担が掛ってしまう。 Since license conditions often vary depending on the third party, they cannot be set uniformly, and it is necessary for a developer of the manufacturer to set license conditions in the SDK for each SDK providing destination. This places a burden on the developer of the manufacturer at the time of SDK development for setting license conditions.
本発明は、上記の問題に鑑みてなされたものであり、SDK配布パッケージの生成時にSDK開発者以外の者がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができるSDK配布パッケージ生成装置、SDK配布パッケージ生成方法、およびSDK配布パッケージ生成プログラムを得ることを目的とする。 The present invention has been made in view of the above problems, and it is possible for a person other than the SDK developer to easily set the license condition when generating the SDK distribution package, and the developer's work for setting the license condition is performed. An object is to obtain an SDK distribution package generation device, an SDK distribution package generation method, and an SDK distribution package generation program capable of reducing the burden.
上記の課題を解決するために、本発明では以下のようにした。 In order to solve the above problems, the present invention is configured as follows.
本発明に係るSDK配布パッケージ生成装置は、SDKソースファイルを記憶する記憶装置と、入力されたライセンス条件をSDKソースファイルに適用し、そのSDKソースファイルからSDKバイナリを生成するバイナリ生成部と、SDKバイナリを含むSDK配布パッケージを生成するパッケージ生成部とを備える。 An SDK distribution package generation device according to the present invention includes a storage device that stores an SDK source file, a binary generation unit that applies an input license condition to the SDK source file, and generates an SDK binary from the SDK source file, and an SDK. A package generation unit that generates an SDK distribution package including binaries.
これにより、メーカでのSDKソースファイルの開発完了後、SDK配布パッケージの生成時にSDK開発者以外の者(例えば、販売会社のオペレータ)がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができる。 As a result, after the development of the SDK source file at the manufacturer is completed, the license condition can be easily set by a person other than the SDK developer (for example, the operator of the sales company) when generating the SDK distribution package. Therefore, the workload of the developer can be reduced.
本発明に係るSDK配布パッケージ生成方法は、入力されたライセンス条件を特定するステップと、ライセンス条件をSDKソースファイルに適用するステップと、そのSDKソースファイルからSDKバイナリを生成するステップと、SDKバイナリを含むSDK配布パッケージを生成するステップとを備える。 An SDK distribution package generation method according to the present invention includes a step of specifying an input license condition, a step of applying the license condition to an SDK source file, a step of generating an SDK binary from the SDK source file, and an SDK binary Generating an SDK distribution package that includes.
これにより、メーカでのSDKソースファイルの開発完了後、SDK配布パッケージの生成時にSDK開発者以外の者(例えば、販売会社のオペレータ)がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができる。 As a result, after the development of the SDK source file at the manufacturer is completed, the license condition can be easily set by a person other than the SDK developer (for example, the operator of the sales company) when generating the SDK distribution package. Therefore, the workload of the developer can be reduced.
本発明に係るSDK配布パッケージ生成プログラムは、コンピュータに、入力されたライセンス条件を特定するステップと、ライセンス条件をSDKソースファイルに適用するステップと、そのSDKソースファイルからSDKバイナリを生成するステップと、SDKバイナリを含むSDK配布パッケージを生成するステップとを実行させる。 An SDK distribution package generation program according to the present invention includes a step of identifying a license condition input to a computer, a step of applying the license condition to an SDK source file, a step of generating an SDK binary from the SDK source file, Generating an SDK distribution package including the SDK binaries.
これにより、メーカでのSDKソースファイルの開発完了後、SDK配布パッケージの生成時にSDK開発者以外の者(例えば、販売会社のオペレータ)がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができる。 As a result, after the development of the SDK source file at the manufacturer is completed, the license condition can be easily set by a person other than the SDK developer (for example, the operator of the sales company) when generating the SDK distribution package. Therefore, the workload of the developer can be reduced.
また、本発明に係るSDK配布パッケージ生成プログラムは、上記のSDK配布パッケージ生成プログラムに加え、次のようにしてもよい。この場合、ライセンス条件は、SDKバイナリの使用期限を含む。 Further, the SDK distribution package generation program according to the present invention may be as follows in addition to the above-mentioned SDK distribution package generation program. In this case, the license condition includes an expiration date of the SDK binary.
また、本発明に係るSDK配布パッケージ生成プログラムは、上記のSDK配布パッケージ生成プログラムのいずれかに加え、次のようにしてもよい。この場合、SDK配布パッケージ生成プログラムは、コンピュータに、記憶装置内の1または複数のSDKソースファイルのリストを表示装置に表示させるステップと、入力装置に対する操作に応じて、リストからSDK配布パッケージに含める1または複数のSDKソースファイルを選択するステップとをさらに備え、コンピュータに、選択された1または複数のSDKソースファイルにライセンス条件をそれぞれ適用してそれぞれのSDKバイナリを生成させ、生成したすべてのSDKバイナリを含むSDK配布パッケージを生成させる The SDK distribution package generation program according to the present invention may be as follows in addition to any of the above SDK distribution package generation programs. In this case, the SDK distribution package generation program causes the computer to display a list of one or more SDK source files in the storage device on the display device, and includes the list from the list in the SDK distribution package according to the operation on the input device. Selecting one or more SDK source files, and causing the computer to apply respective license conditions to the selected one or more SDK source files to generate respective SDK binaries, and to generate all the generated SDKs. Generate an SDK distribution package containing binaries
これにより、開発者以外の者(例えば、販売会社のオペレータ)が、ライセンス条件設定を行いつつ、SDKの提供先に応じたSDK配布パッケージの生成を簡単に行うことができる。 Thereby, a person other than the developer (for example, an operator of a sales company) can easily generate an SDK distribution package according to an SDK providing destination while setting license conditions.
また、本発明に係るSDK配布パッケージ生成プログラムは、上記のSDK配布パッケージ生成プログラムのいずれかに加え、次のようにしてもよい。この場合、SDKソースファイルは、JAVA(登録商標)で記述され、SDKバイナリは、JAVA(登録商標)アプリケーションプログラムであり、SDK配布パッケージは、所定の形式のアーカイブファイルである。 The SDK distribution package generation program according to the present invention may be as follows in addition to any of the above SDK distribution package generation programs. In this case, the SDK source file is described in JAVA (registered trademark), the SDK binary is a JAVA (registered trademark) application program, and the SDK distribution package is an archive file of a predetermined format.
本発明によれば、メーカでのSDKソースファイルの開発完了後、SDK配布パッケージの生成時にSDK開発者以外の者(例えば、販売会社のオペレータ)がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができる。 According to the present invention, after completion of development of an SDK source file at a manufacturer, a person other than the SDK developer (for example, an operator of a sales company) can easily set license conditions when generating an SDK distribution package. The workload of the developer for setting conditions can be reduced.
以下、図に基づいて本発明の実施の形態を説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
最初に、図1を参照して、本発明の実施の形態により生成されるSDK配布パッケージに関連する、画像形成装置のメーカ、販売会社、サードパーティおよびエンドユーザの関係について説明する。 First, with reference to FIG. 1, the relationship among image forming apparatus manufacturers, sales companies, third parties, and end users related to the SDK distribution package generated according to the embodiment of the present invention will be described.
本実施の形態では、画像形成装置のメーカ101が、画像形成装置のアプリケーション開発用SDKを開発し、使用期限などのライセンス条件を設定せずに、そのSDKのソースコードを含むSDKソースファイルを画像形成装置の販売会社102へ提供する。そして、販売会社102では、オペレータが端末装置1を使用してライセンス条件を入力すると、そのSDKソースファイルから、そのライセンス条件が適用されたSDKバイナリが生成され、そのSDKバイナリを含むSDK配布パッケージが生成される。そして、販売会社102からサードパーティ103へ所定のライセンス条件の下でSDK配布パッケージが提供される。サードパーティ103では、そのSDK配布パッケージが図示せぬ開発用端末(パーソナルコンピュータ等)にインストールされ、ライセンス条件により許可された範囲内でそれに含まれるSDK(バイナリ)を使用して画像形成装置2のアプリケーションプログラムの作成が行われる。作成されたアプリケーションプログラムは、例えば販売会社102を介してエンドユーザ104に販売され、画像形成装置2にインストールされ使用される。
In this embodiment, an image forming
このようにして、各プログラム(SDK、SDK配布パッケージ、アプリケーションプログラムなど)が授受される。 In this way, each program (SDK, SDK distribution package, application program, etc.) is exchanged.
次に、本発明のSDK配布パッケージ生成装置の一実施の形態である端末装置1について説明する。
Next, the
図2は、本発明のSDK配布パッケージ生成装置の一実施の形態である端末装置1の構成を示すブロック図である。図2に示す端末装置1は、コンピュータを内蔵しており、各種プログラムを実行して演算や処理を実行する。端末装置1としては、例えばパーソナルコンピュータが使用される。
FIG. 2 is a block diagram showing a configuration of the
端末装置1において、表示装置11は、操作画面などを表示する装置である。表示装置11としては、例えば液晶ディスプレイが使用される。入力装置12は、操作画面に対する操作を入力するための装置である。入力装置12としては、例えばキーボードやマウスが使用される。より具体的には、図示せぬグラフィック回路が描画処理およびビデオ信号の出力を行い、表示装置11は、そのビデオ信号に従って画面を表示する。また、図示せぬインタフェースが入力装置12との間のデータの送受を行う。
In the
また、インタフェース13は、周辺装置またはネットワーク機器を接続され、データ通信を行う回路である。インタフェース13としては、例えばUSB(Universal Serial Bus)といった周辺機器インタフェース、あるいはネットワークインタフェースが使用される。
The
記憶装置14は、図示せぬオペレーティングシステム、各種プログラム、および各種データを格納する記録媒体を有する装置である。記憶装置14としては、不揮発性半導体メモリ、ハードディスク駆動装置、ディスクアレイ装置などが使用される。
The
この実施の形態では、記憶装置14には、1または複数のSDKソースファイル21、およびSDK配布パッケージプログラム22が記憶されている。
In this embodiment, the
SDKソースファイル21は、SDKのソースコードを含むファイルであって、メーカ101により開発されたものである。この実施の形態では、SDKソースファイル21は、JAVA(登録商標)で記述されている。なお、SDKソースファイル21は、記録媒体に記録されてメーカ101から提供されるか、メーカ101のサーバからダウンロードされて、端末装置1へ格納される。
The
SDK配布パッケージプログラム22は、SDKソースファイル21からSDK配布パッケージを生成するためのプログラムである。なお、SDK配布パッケージプログラム22を、CD−ROM、DVD−ROMなどの可搬性のある記録媒体に記録し、その記録媒体をメーカ101から提供するようにしてもよい。その場合、その記録媒体から端末装置1へSDK配布パッケージプログラム22がインストールされる。
The SDK
また、CPU(Central Processing Unit)15は、プログラムに記述された処理を実行する演算処理装置である。また、ROM(Read Only Memory)16は、プログラムおよびデータを予め記憶した不揮発性のメモリである。また、RAM(Random Access Memory)17は、プログラムを実行する際にそのプログラムおよびデータを一時的に記憶するメモリである。CPU15、ROM16およびRAM17は、バスやコントローラチップを介して互いに接続されており、さらに、バスやコントロールチップを介して記憶装置14、インタフェース13、表示装置11のグラフィック回路、および入力装置12のインタフェースに接続されている。
A CPU (Central Processing Unit) 15 is an arithmetic processing unit that executes processing described in a program. A ROM (Read Only Memory) 16 is a non-volatile memory that stores programs and data in advance. A RAM (Random Access Memory) 17 is a memory that temporarily stores the program and data when the program is executed. The
CPU15は、記憶装置14またはROM16に格納されているプログラムをRAM17にロードして実行する。これにより、プログラムに記述された処理を実行する処理部が実現される。
The
この実施の形態では、SDK配布パッケージプログラム22が実行されることにより、UI処理部31、バイナリ生成部32およびパッケージ生成部33が実現される。
In this embodiment, the
UI処理部31は、表示装置11における操作画面の表示、および入力装置12に対する入力の検出を行う処理部である。UI処理部31は、記憶装置14内の1または複数のSDKソースファイル21のリストを表示装置11に表示させ、入力装置12に対する操作に応じて、そのリストから、SDK配布パッケージに含める1または複数のSDKソースファイルを選択する。
The
バイナリ生成部32は、入力装置12で入力されたライセンス条件をSDKソースファイル21に適用し、そのSDKソースファイルからSDKバイナリを生成する処理部である。より具体的には、バイナリ生成部32は、上述のリストから選択された1または複数のSDKソースファイルにライセンス条件をそれぞれ適用してそれぞれのSDKバイナリを生成させる。なお、この実施の形態では、ライセンス条件として、SDKバイナリの使用期限が設定される。また、この実施の形態では、SDKバイナリは、JAVA(登録商標)アプリケーションプログラム(JAVAバイトコード)である。
The
パッケージ生成部33は、バイナリ生成部32により生成された1または複数のSDKバイナリを含むSDK配布パッケージを生成する処理部である。この実施の形態では、SDK配布パッケージは、ZIP形式などの所定の形式のアーカイブファイルである。
The
次に、上記端末装置1の動作(つまり、SDK配布パッケージの生成)について説明する。図3は、図2に示す端末装置1の動作について説明するフローチャートである。
Next, the operation of the terminal device 1 (that is, generation of an SDK distribution package) will be described. FIG. 3 is a flowchart for explaining the operation of the
SDK配布パッケージプログラム22がCPU15で実行されると、まず、UI処理部31が、記憶装置14内の1または複数のSDKソースファイル21のリストを表示装置11に表示させる(ステップS1)。
When the SDK
図4は、図2に示す端末装置1において表示されるSDKソースファイルのリストを含む操作画面の一例を示す図である。図4に示す画面では、SDKソースファイルのリスト201、および、パッケージングすべきSDKをオペレータが選択するためのチェックボックス202が表示される。また、図4に示す画面には、SDKを選択する入力を確定させ、操作画面を遷移させるための「次へ」ボタン203が表示される。
FIG. 4 is a diagram showing an example of an operation screen including a list of SDK source files displayed on the
そして、UI処理部31は、入力装置12に対する操作に応じて、そのリストから、SDK配布パッケージに含める1または複数のSDKソースファイルを選択する(ステップS2)。
Then, the
例えば、図4に示す画面において、1または複数のチェックボックス202がチェックされ、「次へ」ボタン203が押下されると、UI処理部31は、入力装置12に対するその操作を検出し、チェックボックス202がチェックされたSDKに対応するSDKソースファイルを選択する。
For example, in the screen shown in FIG. 4, when one or
次に、UI処理部31は、選択されたSDKのライセンス条件を入力するための操作画面を表示装置11に表示させ、その操作画面に対して入力されたライセンス条件を特定する(ステップS3)。ここでは、ライセンス条件として、SDKの使用期限が特定される。また、UI処理部31は、SDK配布パッケージ生成プログラム22についてのユーザ認証パスワードを入力するための操作画面を表示装置11に表示させ、その操作画面に対して入力されたパスワードを特定する(ステップS4)。なお、このパスワードは、SDK配布パッケージ生成プログラム22とともに正規ユーザに予め配布される。
Next, the
図5は、図2に示す端末装置1において表示される、そのライセンス条件およびそのパスワードを入力するための操作画面の一例を示す図である。この操作画面は、図4に示す操作画面における「次へ」ボタン203が押下されると表示される。図5に示す画面では、使用期限の年月日および時分を入力するための入力フィールド(テキストボックス)211が表示されるとともに、パスワード入力のための入力フィールド212が表示される。また、図5に示す画面には、入力フィールド211,212への入力を確定させ、操作画面を遷移させるための「次へ」ボタン213が表示される。図5に示す画面において、オペレータにより使用期限の年月日および時分およびパスワードが入力され、「次へ」ボタン213が押下されると、UI処理部31は、入力装置12に対するその操作を検出し、その操作画面に対して入力されたライセンス条件としての使用期限を特定する。併せて、入力されたパスワードが特定される。
FIG. 5 is a diagram showing an example of an operation screen for inputting the license condition and the password displayed on the
さらに、UI処理部31は、SDK配布パッケージの名称、保存先のパス、および同梱ファイル(SDKとともにパッケージに同梱すべきファイル)を指定するための操作画面を表示装置11に表示させ、その操作画面に対して入力されたそれらの情報を特定する。例えば、READMEファイル、サンプルコードなどが同梱ファイルとされる。
Further, the
図6は、図2に示す端末装置1において表示される、SDK配布パッケージの名称、保存先のパス、および同梱ファイルを指定するための操作画面の一例を示す図である。この操作画面は、図5に示す操作画面における「次へ」ボタン213が押下されると表示される。図6に示す画面では、SDK配布パッケージの名称を入力するための入力フィールド221、SDK配布パッケージの保存先パスを入力するための入力フィールド222、および同梱ファイルのファイル名を入力するための入力フィールド223が表示される。なお、この実施の形態では、SDK配布パッケージは、パスワード付きのZIP形式のアーカイブファイルとされるが、図6に示すように、プルダウンメニューなどでファイル形式を選択可能としてもよい。例えば、インストーラ形式のアーカイブファイルとされてもよい。また、図6に示す画面には、入力フィールド221〜223への入力を確定させ、SDKバイナリを含むSDK配布パッケージの生成を実行させるための「完了」ボタン224が表示される。図6に示す画面において、オペレータにより入力フィールド221〜223へそれぞれの情報が入力され、「完了」ボタン224が押下されると、UI処理部31は、入力装置12に対するその操作を検出し、その操作画面に対して入力された情報を特定する。
FIG. 6 is a diagram illustrating an example of an operation screen for designating the name of the SDK distribution package, the storage destination path, and the bundled file displayed on the
そして、所定の操作(例えば図6における「完了」ボタン224の押下)が検出されると、まず、UI処理部31は、上述の入力されたパスワードが正しいものであるか否かを判定する(ステップS5)。
When a predetermined operation (for example, pressing of the “complete”
上述の入力されたパスワードが正しいものであると判定された場合、バイナリ生成部32は、ステップS2で選択されたSDKソースファイルを、ステップS3で特定されたライセンス条件に基づいて編集する(ステップS6)。これにより、そのSDKソースファイルから生成されたSDKバイナリは、そのライセンス条件で許可されている場合のみ使用可能(つまり、実行可能)となる。
If it is determined that the input password is correct, the
図7は、図2に示す端末装置1により生成されるSDKバイナリの構成の一例を示す図である。このSDKバイナリ301は、コア機能パッケージ311と、機能拡張用のパッケージ312〜314とを含む。各パッケージ311〜314は、JAVAバイトコードで記述されたクラスファイルを含むJARファイルとされる。なお、このSDKバイナリ301は、例えば、それらのJARファイルを含む1つのアーカイブファイルとされる。
FIG. 7 is a diagram illustrating an example of the configuration of the SDK binary generated by the
コア機能パッケージ311は、一般的なデータハンドリング(文字列、数値についての管理、演算など)、ファイル入出力、使用制限機能などの基本的な機能を実現するためのパッケージである。UI機能パッケージ312は、コア機能パッケージ311と連携して、SDKのユーザインタフェースを実現するためのパッケージである。ビルド機能パッケージ313は、コア機能パッケージ311と連携して、SDKでアプリケーションプログラムを生成するためのパッケージである。使用制限パッケージ314は、コア機能パッケージ311の使用制限機能を拡張し、使用制限パッケージ314内で設定されているライセンス条件に基づき使用制限を行うためのパッケージである。
The
例えば、使用制限機能のパラメータ(コア機能パッケージ311内のメンバ変数)に、コア機能パッケージ311が使用不可となる初期値が設定され、使用制限パッケージ314は、コア機能パッケージ311内の使用制限機能のクラスをオーバーライドするサブクラスを有し、そのサブクラスから、コア機能パッケージ311における上位クラスのメソッドを呼び出してそのパラメータの値を書き換えるコードを有する。
For example, an initial value at which the
例えば、次のように、上位クラスのメソッドを呼び出すメソッドは、サブクラスに記述される。SDKソースファイル21においては、次のメソッドは、テキストデータとして記述されている。このソースコードのように、SDKの開発者は、引数のない状態(あるいは仮の引数を記述した状態)のコードを作成すればよく、SDKの提供先に応じた個別的な作業を行わずに済む。
For example, a method that calls a method of a higher class is described in a subclass as follows. In the
public void setTrial(int num){
super.setStartDate("");
super.setPeriod("");
}
public void setTrial (int num) {
super.setStartDate ("");
super.setPeriod ("");
}
したがって、ステップS6では、バイナリ生成部32は、ステップS2で選択されたSDKソースファイルにおける上述のサブクラスから呼び出す上位クラスのメソッドの引数を、ステップS3で特定されたライセンス条件に基づいて編集する。
Therefore, in step S6, the
上述の例では、使用許可期間の開始日(例えば現時点の年月日および時分)が、メソッド「setStartDate("")」の引数に設定され、その使用許可期間の開始日と入力された使用期限とから得られる使用許可期間の長さが、メソッド「setPeriod("")」の引数に設定される。そして、メソッド「setStartDate("")」により、使用許可期間の開始日が設定され、メソッド「setPeriod("")」により、使用許可期間の長さが設定される。そして、SDKバイナリ301の実行開始時には、そのときの年月日および時分がタイマ等から取得され、実行開始時が使用許可期間内であるか否かが判定される。
In the above example, the start date of the usage permission period (for example, the current date and time) is set in the argument of the method "setStartDate (" ")", and the usage date entered as the start date of the usage permission period The length of the usage-permitted period obtained from the deadline is set in the argument of the method “setPeriod (" ")". Then, the start date of the use permission period is set by the method “setStartDate (“ ”)”, and the length of the use permission period is set by the method “setPeriod (“ ”)”. When the execution of the
このようにすることで、SDKバイナリ301を実行するたびに、使用制限パッケージ314により、コア機能パッケージ311のインスタンス内の使用制限機能のパラメータの値が書き換えられ、その値に基づくライセンス条件が満たされていれば、そのまま、SDKバイナリ301が正常に動作する。一方、ライセンス条件が満たされていなければ、SDKバイナリ301が動作しない。また、SDKバイナリ301から不正に使用制限パッケージ314が取り除かれた状態では、上述のパラメータの値が書き換えられないため、コア機能パッケージ311ひいてはSDKバイナリ301が使用できなくなるため、不正使用を防止できる。
In this way, each time the
このようにして、ステップS4においてSDKソースファイル21を編集した後、バイバリ生成部32は、各SDKソースファイル21をコンパイルして、各SDKのSDKバイナリ301を生成する(ステップS7)。
In this manner, after editing the
そして、各SDKバイナリ301が生成されると、パッケージ生成部33は、選択されたすべてのSDKのSDKバイナリ301を含むアーカイブファイルをSDK配布パッケージとして生成する(ステップS8)。このとき、生成されたアーカイブファイルのファイル名は、上述のようにして指定されたものとされ、生成されたアーカイブファイルは、上述の保存先に保存される。また、上述の同梱ファイルがある場合には同梱ファイルとして指定されたファイルを記憶装置14等から読み出し、そのファイルを含めてアーカイブファイルが生成される。
When each
SDK配布パッケージが正常に生成されると、UI処理部31は、その旨を示すメッセージを表示装置11に表示させる(ステップS9)。
When the SDK distribution package is normally generated, the
一方、ステップS5において、上述の入力されたパスワードが正しいものではないと判定した場合、UI処理部31は、その旨を示すエラーメッセージを表示装置11に表示させる(ステップS10)。
On the other hand, if it is determined in step S5 that the input password is not correct, the
このようにして生成されたSDK配布パッケージは、正規のサードパーティに提供され、パッケージ解凍後、SDK配布パッケージに含まれるSDKが、サードパーティの開発環境(JAVA(登録商標)アプリケーションの場合、例えばEclipse等)に追加される。 The SDK distribution package generated in this way is provided to a legitimate third party, and after the package is decompressed, the SDK included in the SDK distribution package is a third-party development environment (for example, Eclipse (for example, Eclipse). Etc.).
以上のように、上記実施の形態によれば、端末装置1は、SDKソースファイル21を記憶する記憶装置14と、入力されたライセンス条件をSDKソースファイル21に適用し、適用後のSDKソースファイルからSDKバイナリ301を生成するバイナリ生成部32と、SDKバイナリ301を含むSDK配布パッケージを生成するパッケージ生成部33とを備える。
As described above, according to the above embodiment, the
これにより、SDKにライセンスを導入でき、ライセンス外での不正使用を防止することができる。さらに、SDKソースファイルの開発後、SDK配布パッケージの生成時にSDK開発者以外の者(例えば、販売会社のオペレータ)がライセンス条件設定を簡単に行うことができ、ライセンス条件設定のための開発者の作業負担を軽減することができる。 As a result, a license can be introduced into the SDK, and unauthorized use outside the license can be prevented. Furthermore, after development of the SDK source file, a person other than the SDK developer (for example, an operator of the sales company) can easily set the license condition when generating the SDK distribution package. Work burden can be reduced.
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。 The above-described embodiments are preferred examples of the present invention, but the present invention is not limited to these, and various modifications and changes can be made without departing from the scope of the present invention. is there.
例えば、上記実施の形態において、SDKバイナリを1つのファイル(JARファイル)として、そのファイルを配布パッケージとしてもよい。 For example, in the above embodiment, the SDK binary may be a single file (JAR file) and the file may be a distribution package.
また、上記実施の形態において、SDKにより開発されるアプリケーションプログラムは、JAVA(登録商標)仮想マシン上で動作するJAVA(登録商標)アプリケーションに限らず、ウェブサーバを内蔵する画像形成装置用のウェブアプリケーションであってもよい。 In the above embodiment, the application program developed by the SDK is not limited to the JAVA (registered trademark) application operating on the JAVA (registered trademark) virtual machine, but is a web application for an image forming apparatus incorporating a web server. It may be.
また、上記実施の形態において、端末装置1は、販売会社102ではなく、メーカ101が有していてもよい。
Moreover, in the said embodiment, the
また、上記実施の形態においては、ライセンス条件を、使用期限のみとしているが、パスワードを設定するようにしてもよい。その場合、SDK実行開始時にパスワードが要求され、正しいパスワードが入力された場合のみ、SDKバイナリ301が実行される。
In the above embodiment, the license condition is only the expiration date, but a password may be set. In this case, the
本発明は、例えば、画像形成装置用のアプリケーションプログラムを作成するためのSDKの提供に適用可能である。 The present invention is applicable to, for example, provision of an SDK for creating an application program for an image forming apparatus.
1 端末装置(SDK配布パッケージ生成装置の一例)
2 画像形成装置
14 記憶装置
21 SDKソースファイル
32 バイナリ生成部
33 パッケージ生成部
301 SDKバイナリ
1 Terminal device (an example of an SDK distribution package generation device)
2 Image forming
Claims (6)
SDKソースファイルを記憶する記憶装置と、
入力されたライセンス条件を前記SDKソースファイルに適用し、そのSDKソースファイルからSDKバイナリを生成するバイナリ生成部と、
前記SDKバイナリを含むSDK配布パッケージを生成するパッケージ生成部と、
を備えることを特徴とするSDK配布パッケージ生成装置。 In an SDK distribution package generation device for generating an SDK distribution package for an SDK for generating an application program for an image forming apparatus,
A storage device for storing the SDK source file;
A binary generation unit that applies the input license conditions to the SDK source file and generates an SDK binary from the SDK source file;
A package generation unit for generating an SDK distribution package including the SDK binary;
An SDK distribution package generation device comprising:
入力されたライセンス条件を特定するステップと、
前記ライセンス条件をSDKソースファイルに適用するステップと、
そのSDKソースファイルからSDKバイナリを生成するステップと、
前記SDKバイナリを含むSDK配布パッケージを生成するステップと、
を備えることを特徴とするSDK配布パッケージ生成方法。 In an SDK distribution package generation method for generating an SDK distribution package for an SDK for generating an application program for an image forming apparatus,
Identifying the entered license terms;
Applying the license conditions to an SDK source file;
Generating an SDK binary from the SDK source file;
Generating an SDK distribution package including the SDK binary;
An SDK distribution package generation method comprising:
コンピュータに、
入力されたライセンス条件を特定するステップと、
前記ライセンス条件をSDKソースファイルに適用するステップと、
そのSDKソースファイルからSDKバイナリを生成するステップと、
前記SDKバイナリを含むSDK配布パッケージを生成するステップと、
を実行させることを特徴とするSDK配布パッケージ生成プログラム。 In an SDK distribution package generation program for generating an SDK distribution package for an SDK for generating an application program for an image forming apparatus,
On the computer,
Identifying the entered license terms;
Applying the license conditions to an SDK source file;
Generating an SDK binary from the SDK source file;
Generating an SDK distribution package including the SDK binary;
An SDK distribution package generation program characterized in that is executed.
記憶装置内の1または複数のSDKソースファイルのリストを表示装置に表示させるステップと、
入力装置に対する操作に応じて、前記リストから前記SDK配布パッケージに含める1または複数のSDKソースファイルを選択するステップとをさらに備え、
前記コンピュータに、
選択された前記1または複数のSDKソースファイルに前記ライセンス条件をそれぞれ適用してそれぞれのSDKバイナリを生成させ、
生成したすべての前記SDKバイナリを含むSDK配布パッケージを生成させること、
を特徴とする請求項3記載のSDK配布パッケージ生成プログラム。 In the computer,
Displaying a list of one or more SDK source files in the storage device on a display device;
Selecting one or more SDK source files to be included in the SDK distribution package from the list in response to an operation on the input device;
In the computer,
Applying the license condition to each of the selected one or more SDK source files to generate respective SDK binaries;
Generating an SDK distribution package including all the generated SDK binaries;
The SDK distribution package generation program according to claim 3.
前記SDKバイナリは、JAVA(登録商標)アプリケーションプログラムであり、
前記SDK配布パッケージは、所定の形式のアーカイブファイルであること、
を特徴とする請求項5記載のSDK配布パッケージ生成プログラム。 The SDK source file is described in JAVA (registered trademark),
The SDK binary is a JAVA (registered trademark) application program,
The SDK distribution package is an archive file of a predetermined format;
The SDK distribution package generation program according to claim 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010009426A JP2011150430A (en) | 2010-01-19 | 2010-01-19 | Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010009426A JP2011150430A (en) | 2010-01-19 | 2010-01-19 | Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011150430A true JP2011150430A (en) | 2011-08-04 |
Family
ID=44537365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010009426A Pending JP2011150430A (en) | 2010-01-19 | 2010-01-19 | Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011150430A (en) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363264A (en) * | 2014-10-22 | 2015-02-18 | 北京棱镜云桥科技有限公司 | Multi-channel SDK (software development kit) access system and multi-channel SDK access system for mobile terminal software |
JP2016524765A (en) * | 2013-06-18 | 2016-08-18 | チャンベッラ・リミテッド | Method and apparatus for generating a customized software development kit (SDK) |
CN106095428A (en) * | 2016-06-07 | 2016-11-09 | 乐视控股(北京)有限公司 | The interface allocation method of a kind of cooperation channel and device |
CN103713896B (en) * | 2013-12-17 | 2017-01-04 | 北京京东尚科信息技术有限公司 | Method and device is generated for accessing the SDK of server |
CN108647033A (en) * | 2018-04-03 | 2018-10-12 | 四川新网银行股份有限公司 | A kind of SDK automatic packaging methods of open platform |
US10282185B2 (en) | 2013-07-12 | 2019-05-07 | Ciambella Ltd. | Method and apparatus for firmware virtualization |
US10409562B2 (en) | 2017-03-14 | 2019-09-10 | Ciambella Ltd. | Method and apparatus for automatically generating and incorporating code in development environments |
US10732969B2 (en) | 2015-12-21 | 2020-08-04 | Ciambella Ltd. | Method and apparatus for creating and managing controller based remote solutions |
US10798780B2 (en) | 2016-08-22 | 2020-10-06 | Ciambella Ltd. | Method and apparatus for creating and managing controller based remote solutions |
US10853108B2 (en) | 2013-06-18 | 2020-12-01 | Ciambella Ltd. | Method and apparatus for code virtualization and remote process call generation |
CN112579183A (en) * | 2020-12-28 | 2021-03-30 | 中国建设银行股份有限公司 | Industry IC card reading and writing method, electronic equipment and storage medium |
US10997531B2 (en) | 2007-09-11 | 2021-05-04 | Ciambella Ltd. | System, method and graphical user interface for workflow generation, deployment and/or execution |
US11087249B2 (en) | 2016-05-24 | 2021-08-10 | Ciambella Ltd. | Method and apparatus for triggering execution of a workflow over a network |
-
2010
- 2010-01-19 JP JP2010009426A patent/JP2011150430A/en active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10997531B2 (en) | 2007-09-11 | 2021-05-04 | Ciambella Ltd. | System, method and graphical user interface for workflow generation, deployment and/or execution |
JP2016524765A (en) * | 2013-06-18 | 2016-08-18 | チャンベッラ・リミテッド | Method and apparatus for generating a customized software development kit (SDK) |
US10853108B2 (en) | 2013-06-18 | 2020-12-01 | Ciambella Ltd. | Method and apparatus for code virtualization and remote process call generation |
US10282185B2 (en) | 2013-07-12 | 2019-05-07 | Ciambella Ltd. | Method and apparatus for firmware virtualization |
CN103713896B (en) * | 2013-12-17 | 2017-01-04 | 北京京东尚科信息技术有限公司 | Method and device is generated for accessing the SDK of server |
CN104363264B (en) * | 2014-10-22 | 2017-10-03 | 北京棱镜云桥科技有限公司 | The SDK access systems by all kinds of means of mobile terminal software |
CN104363264A (en) * | 2014-10-22 | 2015-02-18 | 北京棱镜云桥科技有限公司 | Multi-channel SDK (software development kit) access system and multi-channel SDK access system for mobile terminal software |
US10732969B2 (en) | 2015-12-21 | 2020-08-04 | Ciambella Ltd. | Method and apparatus for creating and managing controller based remote solutions |
US11087249B2 (en) | 2016-05-24 | 2021-08-10 | Ciambella Ltd. | Method and apparatus for triggering execution of a workflow over a network |
CN106095428A (en) * | 2016-06-07 | 2016-11-09 | 乐视控股(北京)有限公司 | The interface allocation method of a kind of cooperation channel and device |
US10798780B2 (en) | 2016-08-22 | 2020-10-06 | Ciambella Ltd. | Method and apparatus for creating and managing controller based remote solutions |
US10409562B2 (en) | 2017-03-14 | 2019-09-10 | Ciambella Ltd. | Method and apparatus for automatically generating and incorporating code in development environments |
CN108647033A (en) * | 2018-04-03 | 2018-10-12 | 四川新网银行股份有限公司 | A kind of SDK automatic packaging methods of open platform |
CN112579183A (en) * | 2020-12-28 | 2021-03-30 | 中国建设银行股份有限公司 | Industry IC card reading and writing method, electronic equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011150430A (en) | Sdk distribution package generation device, sdk distribution package generation method, and sdk distribution package generation program | |
US9471288B2 (en) | Compile based obfuscation | |
US8296721B2 (en) | Template-based software development | |
US20160086258A1 (en) | Customizable three dimensional models | |
JP4938869B2 (en) | SDK use restriction adding device and use restricted software development system | |
US9471755B2 (en) | Font protection management | |
JP2010182116A (en) | Server device and driver package generation program | |
CN115237428A (en) | AI application deployment method, and related platform, cluster, medium, and program product | |
US20220405068A1 (en) | Managing asset packages for interactive bot development | |
JP2018151806A (en) | Information processing apparatus, method for controlling information processing apparatus, and program | |
JP6070423B2 (en) | Information processing apparatus, information processing method, and program | |
CN116305011A (en) | Application program protection method and installation method | |
KR102360646B1 (en) | Automatic application creation system based on user account input information | |
CN113220314B (en) | APP resource loading and APK generation method, device, equipment and medium | |
JP4655613B2 (en) | Program execution apparatus and program execution method | |
JP5707430B2 (en) | Application development program | |
CN112543104A (en) | Application program packaging method and device, electronic equipment and storage medium | |
JP2009271726A (en) | Electronic device, method of controlling program execution, and program | |
JP6653849B2 (en) | Method and apparatus for structuring components that support multiple screens using a single code in a business application | |
JP2005251070A (en) | System and method for managing license | |
WO2020070873A1 (en) | Cpu unit, programmable logic controller, method, program, and engineering tool | |
JP5852754B2 (en) | Application development method | |
JP5852755B2 (en) | Application development equipment | |
JP2019020990A (en) | Program, information processing device and information processing method | |
JPWO2020044483A1 (en) | Control devices, control methods and programs |