(57)【要約】      （修正有）【課題】アプリケーション開発者への開発負担を軽減することができるアプリケーション生成支援システムおよびアプリケーション生成支援プログラムを提供すること。【解決手段】アプリケーション生成支援システムは、サーバ１００において、通信端末に固有のネイティブ機能を実行させるためのパラメータに応じて、通信端末において実行されるアプリケーションの動作を規定する設定ファイルを設定するファイル設定部と、設定ファイルに基づいてアプリケーションパッケージを生成するアプリケーションパッケージ生成部と、第１ユーザによって設定されたパラメータを、ネットワークを介して受信するパラメータ受信部と、を有する。【選択図】図５
2019008825.tif 000002
【特許請求の範囲】
【請求項１】
通信端末に固有のネイティブ機能を実行させるためのパラメータに応じて、前記通信端末において実行されるアプリケーションの動作を規定する設定ファイルを設定する設定部と、
前記設定ファイルに基づいてアプリケーションパッケージを生成する生成部と、
第１ユーザによって設定された前記パラメータを、ネットワークを介して受信する受信部と、を有するアプリケーション生成支援システム。
【請求項２】
前記設定部は、前記受信部が受信した前記パラメータに応じて前記設定ファイルを設定する、請求項１に記載のアプリケーション生成支援システム。
【請求項３】
前記アプリケーションパッケージのダウンロード情報を第２ユーザに提供する提供部をさらに有する、請求項２に記載のアプリケーション生成支援システム。
【請求項４】
前記設定ファイルは、
前記パラメータに関連し、複数の前記通信端末の動作に共通するアプリケーションの動作を規定するＯＳ設定ファイルと、
前記パラメータに関連し、前記第１ユーザによって入力されたアプリケーションの動作を規定するアプリケーション設定ファイルと、
のうち少なくともいずれか一方を含む、請求項３に記載されたアプリケーション生成支援システム。
【請求項５】
前記設定部による設定の前に、前記第１ユーザによって設定された前記アプリケーション設定ファイルに関連する前記パラメータをチェックするパラメータチェック部をさらに有する、請求項１に記載されたアプリケーション生成支援システム。
【請求項６】
前記提供部は、
前記生成部によって生成された前記アプリケーションパッケージが登録されたダウンロードページを生成し、
アプリケーション開発支援ツールを介して前記ダウンロードページの情報を含む前記ダウンロード情報を前記第２ユーザに提供する、請求項３に記載されたアプリケーション生成支援システム。
【請求項７】
通信端末に固有のネイティブ機能を実行させるためのパラメータに応じて、前記通信端末において実行されるアプリケーションの動作を規定する設定ファイルを設定する設定部と、
前記設定ファイルに基づいてアプリケーションパッケージを生成する生成部と、
前記アプリケーションパッケージを識別する電子証明書を管理する電子証明管理部と、を有し、
前記電子証明書は、前記電子証明管理部によって前記アプリケーションパッケージに追記されるアプリケーション生成支援システム。
【請求項８】
第１ユーザによって設定されたパラメータを、ネットワークを介して受信し、
通信端末に固有のネイティブ機能を実行させるための前記パラメータに応じて、前記通信端末において実行されるアプリケーションの動作を規定する設定ファイルを設定し、
前記設定ファイルに基づいてアプリケーションパッケージを生成することをコンピュータに実行させるアプリケーション生成支援プログラム。
【請求項９】
前記ネットワークを介して受信した前記パラメータに応じて前記設定ファイルを設定する、請求項８に記載されたアプリケーション生成支援プログラム。
【請求項１０】
前記アプリケーションパッケージのダウンロード情報を第２ユーザに提供することをさらに含む、請求項９に記載されたアプリケーション生成支援プログラム。
【請求項１１】
前記設定ファイルは、
前記パラメータに関連し、複数の前記通信端末の動作に共通するアプリケーションの動作を規定するＯＳ設定ファイルと、
前記パラメータに関連し、前記第１ユーザによって入力されたアプリケーションの動作を規定するアプリケーション設定ファイルと、
のうち少なくともいずれか一方を含む、請求項１０に記載されたアプリケーション生成支援プログラム。
【請求項１２】
前記設定ファイルの設定の前に、前記第１ユーザによって設定された前記アプリケーション設定ファイルに関連する前記パラメータをチェックする、請求項８に記載されたアプリケーション生成支援プログラム。
【請求項１３】
生成された前記アプリケーションパッケージが登録されたダウンロードページを生成し、
前記ダウンロード情報の提供は、アプリケーション開発支援ツールを介して前記ダウンロードページの情報を含む前記ダウンロード情報を前記第２ユーザに提供する、請求項１２に記載されたアプリケーション生成支援プログラム。
【請求項１４】
通信端末に固有のネイティブ機能を実行させるためのパラメータに応じて、前記通信端末において実行されるアプリケーションの動作を規定する設定ファイルを設定し、
前記設定ファイルに基づいてアプリケーションパッケージを生成し、
前記アプリケーションパッケージを識別し、前記アプリケーションパッケージに追記される電子証明書を管理することをコンピュータに実行させるアプリケーション生成支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション生成支援システムおよびアプリケーション生成支援プログラムに関する。
【背景技術】
【０００２】
モバイル用通信端末のアプリケーションとして、さまざまなアプリケーションが開発されている。モバイル用通信端末のアプリケーションは、Ｗｅｂアプリケーション、ネイティブアプリケーション、およびハイブリッドアプリケーションに分類される。Ｗｅｂアプリケーションは、演算処理をネットワーク上のサーバで実行するタイプのアプリケーションである。ネイティブアプリケーションは、演算処理を通信端末上でのみ実行するタイプのアプリケーションである。ネイティブアプリケーションは、例えば、カメラ、ＧＰＳ、マイク、加速度センサなど、通信端末に固有のネイティブ機能を利用することができる、という特徴を有するアプリケーションである。ハイブリッドアプリケーションは、ネイティブ機能を利用することができ、マルチプラットフォームに対応したアプリケーションを作成することができ、アプリケーションをｗｅｂブラウザのように使用するＷｅｂ  Ｖｉｅｗを用いることができるという特徴を有するアプリケーションである。
【０００３】
上記のように、ハイブリッドアプリケーションは、Ｗｅｂアプリケーションおよびネイティブアプリケーションのそれぞれの利点を備えるため、通信端末用アプリケーションの主流となっている。例えば、業務用の通信端末に用いられるアプリケーションとしてもハイブリッドアプリケーションが広く用いられる。業務用のハイブリッドアプリケーションを作成するためには、業務を行う各組織において業務目的に適したアプリケーションの開発を行う必要がある。
【０００４】
ここで、アプリケーションを開発するためには、アプリケーションをインストールする通信端末のＯＳに適合した専用端末を準備し、当該ＯＳに適したアプリケーション開発ツールを導入し、当該アプリケーション開発ツールにおけるプログラミング言語を用いたアプリケーション開発をする必要がある。このように、アプリケーション開発のためには、専用端末の準備およびアプリケーション開発ツールの導入などのアプリケーション開発環境の整備、ならびにプログラミング言語などのスキル習得などの多様な初期投資が必要である。
【０００５】
プログラミング言語のスキル習得の負担を軽減するために、プログラム開発を支援するための技術が開発されている。例えば、プログラム開発をより簡易化するために、特許文献１のようなプログラム開発装置が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第６０６４８８９号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、通信端末上で動作し、通信端末の動作に合わせて動作または画面表示するアプリケーションを作成するためには特許文献１に記載された技術に比べてはるかに高度なプログラミング技術が必要である。さらに、アプリケーションの用途に応じて多様な機能をアプリケーションに組み込む必要があるため、上記のような通信端末上で動作するアプリケーションの開発のために、アプリケーション開発者に費用および時間の面で大きな負担がかかる。
【０００８】
本発明は、上記実情に鑑み、アプリケーション開発者への開発負担を軽減することができるアプリケーション生成支援システムおよびアプリケーション生成支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一実施形態に係るアプリケーション生成支援システムは、通信端末の動作に関連するパラメータに応じてアプリケーションの動作を規定する設定ファイルを設定する設定部と、前記設定ファイルに基づいてアプリケーションパッケージを生成する生成部と、を有する。
【００１０】
第１ユーザによって設定された前記パラメータを、ネットワークを介して受信する受信部をさらに有してもよい。
【００１１】
前記設定部は、前記受信部が受信した前記パラメータに応じて前記設定ファイルを設定してもよい。
【００１２】
前記アプリケーションパッケージのダウンロード情報を第２ユーザに提供する提供部をさらに有してもよい。
【００１３】
前記設定ファイルは、前記パラメータに関連し、複数の前記通信端末の動作に共通するアプリケーションの動作を規定するＯＳ設定ファイルと、前記パラメータに関連し、前記第１ユーザによって入力されたアプリケーションの動作を規定するアプリケーション設定ファイルと、のうち少なくともいずれか一方を含んでもよい。
【００１４】
前記ＯＳ設定ファイルは、アプリケーション開発支援ツールに予め準備されたテンプレートの一部が前記ＯＳ設定ファイルに関連する前記パラメータに置換されたファイルであってもよい。
【００１５】
前記アプリケーション設定ファイルは、前記アプリケーション開発支援ツールに予め準備されたテンプレートに対して、前記第１ユーザによって入力された情報が上書きされたファイルであってもよい。
【００１６】
前記アプリケーション設定ファイルは、第３ユーザによって作成され、前記アプリケーション開発支援ツールにアップロードされたテンプレートに対して、前記第１ユーザによって入力された情報が上書きされたファイルであってもよい。
【００１７】
前記設定部による設定の前に、前記第１ユーザによって設定された前記アプリケーション設定ファイルに関連する前記パラメータをチェックするパラメータチェック部をさらに有してもよい。
【００１８】
前記アプリケーション設定ファイルは、前記アプリケーションパッケージに基づいて前記第２ユーザの通信端末にインストールされたアプリケーションが起動されたときに、前記第２ユーザの通信端末に表示されるページの初期ＵＲＬを含み、前記パラメータチェック部は、前記初期ＵＲＬの形式をチェックし、前記初期ＵＲＬが規定の形式ではない場合に、エラーメッセージを第１ユーザに通知してもよい。
【００１９】
前記提供部は、前記生成部によって生成された前記アプリケーションパッケージが登録されたダウンロードページを生成し、前記アプリケーション開発支援ツールを介して前記ダウンロードページの情報を含む前記ダウンロード情報を前記第２ユーザに提供してもよい。
【００２０】
前記設定ファイルは、前記通信端末に固有のネイティブ機能を前記通信端末に実行させるプラグインファイルを含んでもよい。
【００２１】
前記プラグインファイルは、第３ユーザによって作成され、前記アプリケーション開発支援ツールにアップロードされたテンプレートに対して、前記第１ユーザによって入力された情報が更新されたファイルであってもよい。
【００２２】
前記アプリケーションパッケージを識別する電子証明書を管理する電子証明管理部をさらに有し、前記電子証明書は、前記電子証明管理部によって前記アプリケーションパッケージに追記されてもよい。
【００２３】
本発明の一実施形態に係るアプリケーション生成支援システムは、通信端末の動作を規定する複数のテンプレートを関連付ける関連付け部と、前記複数のテンプレートによって規定された動作の各々が前記通信端末のアプリケーション上で実現可能となるように、前記テンプレートの一部を更新する更新部と、を有する。
【００２４】
前記更新部は、前記テンプレートの一部をユーザによって設定されたパラメータに置換する、または前記テンプレートの一部に対してユーザによって入力された情報を上書きする、のうち少なくともいずれか一方を含んでもよい。
【００２５】
前記関連付け部は、前記通信端末に固有のネイティブ機能を前記通信端末に実行させるプラグインファイルを前記複数のテンプレートに関連付け、前記更新部は、前記プラグインファイルによって規定された前記通信端末の動作が前記通信端末上で実現可能となるように、前記プラグインファイルの一部を更新してもよい。
【００２６】
本発明の一実施形態に係るアプリケーション生成支援プログラムは、通信端末の動作に関連するパラメータに応じてアプリケーションの動作を規定する設定ファイルを設定し、前記設定ファイルに基づいてアプリケーションパッケージを生成することをコンピュータに実行させる。
【００２７】
第１ユーザによって設定された前記パラメータを、ネットワークを介して受信することをさらに含んでもよい。
【００２８】
前記ネットワークを介して受信した前記パラメータに応じて前記設定ファイルを設定してもよい。
【００２９】
前記アプリケーションパッケージのダウンロード情報を第２ユーザに提供することをさらに含んでもよい。
【００３０】
前記設定ファイルは、前記パラメータに関連し、複数の前記通信端末の動作に共通するアプリケーションの動作を規定するＯＳ設定ファイルと、前記パラメータに関連し、前記第１ユーザによって入力されたアプリケーションの動作を規定するアプリケーション設定ファイルと、のうち少なくともいずれか一方を含んでもよい。
【００３１】
前記ＯＳ設定ファイルは、アプリケーション開発支援ツールに予め準備されたテンプレートの一部が前記ＯＳ設定ファイルに関連する前記パラメータに置換されたファイルであってもよい。
【００３２】
前記アプリケーション設定ファイルは、前記アプリケーション開発支援ツールに予め準備されたテンプレートに対して、前記第１ユーザによって入力された情報が上書きされたファイルであってもよい。
【００３３】
前記アプリケーション設定ファイルは、第３ユーザによって作成され、前記アプリケーション開発支援ツールにアップロードされたテンプレートに対して、前記第１ユーザによって入力された情報が上書きされたファイルであってもよい。
【００３４】
前記設定ファイルの設定の前に、前記第１ユーザによって設定された前記アプリケーション設定ファイルに関連する前記パラメータをチェックしてもよい。
【００３５】
前記アプリケーション設定ファイルは、前記アプリケーションパッケージに基づいて前記第２ユーザの通信端末にインストールされたアプリケーションが起動されたときに、前記第２ユーザの通信端末に表示されるページの初期ＵＲＬを含み、前記パラメータのチェックは、前記初期ＵＲＬの形式をチェックし、前記初期ＵＲＬが規定の形式ではない場合に、エラーメッセージを第１ユーザに通知してもよい。
【００３６】
生成された前記アプリケーションパッケージが登録されたダウンロードページを生成し、前記ダウンロード情報の提供は、前記アプリケーション開発支援ツールを介して前記ダウンロードページの情報を含む前記ダウンロード情報を前記第２ユーザに提供してもよい。
【００３７】
前記設定ファイルは、前記通信端末に固有のネイティブ機能を前記通信端末に実行させるプラグインファイルを含んでもよい。
【００３８】
前記プラグインファイルは、第３ユーザによって作成され、前記アプリケーション開発支援ツールにアップロードされたテンプレートに対して、前記第１ユーザによって入力された情報が更新されたファイルであってもよい。
【００３９】
前記アプリケーションパッケージを識別する電子証明書を管理し、前記電子証明書は、前記アプリケーションパッケージに追記されてもよい。
【００４０】
本発明の一実施形態に係るアプリケーション生成支援プログラムは、通信端末の動作を規定する複数のテンプレートを関連付け、前記複数のテンプレートによって規定された動作の各々が前記通信端末のアプリケーション上で実現可能となるように、前記テンプレートの一部を更新する。
【００４１】
前記テンプレートの更新は、前記テンプレートの一部をユーザによって設定されたパラメータに置換する、または前記テンプレートの一部に対してユーザによって入力された情報を上書きする、のうち少なくともいずれか一方を含んでもよい。
【００４２】
前記通信端末に固有のネイティブ機能を前記通信端末に実行させるプラグインファイルを前記複数のテンプレートに関連付け、前記プラグインファイルによって規定された前記通信端末の動作が前記通信端末上で実現可能となるように、前記プラグインファイルの一部を更新してもよい。
【発明の効果】
【００４３】
本発明によれば、アプリケーション開発者への開発負担を軽減することができるアプリケーション生成支援システムおよびアプリケーション生成支援プログラムを提供することができる。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施形態に係るアプリケーション生成支援システムの概要を示す図である。
【図２】本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバのハードウェア構成を示す概略図である。
【図３】本発明の一実施形態に係るアプリケーション生成支援システムに用いられる第１ユーザの通信端末のハードウェア構成を示す概略図である。
【図４】本発明の一実施形態に係るアプリケーション生成支援システムに用いられる第２ユーザの通信端末のハードウェア構成を示す概略図である。
【図５】本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの機能構成を示すブロック図である。
【図６】本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの設定ファイル設定部の詳細を示すブロック図である。
【図７】本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション生成動作を示すフローチャートである。
【図８】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ入力動作におけるインターフェースである。
【図９】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータの詳細を説明する図である。
【図１０】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータチェックのシーケンスを説明する図である。
【図１１】本発明の一実施形態に係るアプリケーション生成支援システムのエラーメッセージの一例を説明する図である。
【図１２】本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルを設定するシーケンスを説明する図である。
【図１３】本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルの一例を説明する図である。
【図１４】本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション取得動作を示すフローチャートである。
【図１５】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ取得動作におけるインターフェースである。
【図１６】本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション設定ファイルの登録動作を示すフローチャートである。
【図１７】本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション生成動作を示すフローチャートである。
【図１８】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ入力動作におけるインターフェースである。
【図１９】本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルを設定するシーケンスを説明する図である。
【図２０】本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ取得動作におけるインターフェースである。
【図２１】本発明の一実施形態に係るアプリケーション生成支援システムのプラグインファイルの登録動作を示すフローチャートである。
【図２２】本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの機能構成を示すブロック図である。
【図２３】本発明の一実施形態に係るアプリケーション生成支援システムの電子証明書をアプリケーションパッケージに追加するシーケンスを説明する図である。
【発明を実施するための形態】
【００４５】
以下、図面を参照して本発明に係るアプリケーション生成支援システムに用いられるサーバ、通信端末、およびこれらを動作させるためのプログラムは、多くの異なる態様で実施することが可能であり、以下に示す実施の形態の記載内容に限定して解釈されるものではない。なお、本実施の形態で参照する図面において、同一部分または同様な機能を有する部分には同一の数字または同一の数字の後にアルファベットを追加した符号を付し、その繰り返しの説明は省略する。
【００４６】
〈第１実施形態〉
図１〜図１５を用いて、本発明の第１実施形態に係るアプリケーション生成支援システム１０、アプリケーション生成支援システム１０に用いるサーバ１００、第１通信端末２００、および第２通信端末３００、ならびにこれらを動作させるためのプログラムについて詳細に説明する。第１実施形態に示すアプリケーション生成支援システム１０は、ネットワーク４００を介してサーバ１００に接続された第１通信端末２００によって設定されたパラメータに基づいて、サーバ１００がアプリケーションを生成するシステムである。生成されたアプリケーションは、ネットワーク４００を介してサーバ１００に接続された第２通信端末３００によってダウンロードされる。
【００４７】
以下の説明において、第１通信端末２００は、例えばデスクトップ型パソコン（ＰＣ）などのモバイル用ではない通信端末である。第２通信端末３００は、例えばスマートフォンやタブレット端末などのモバイル用の通信端末である。ただし、上記の構成に限定されない。例えば、第１通信端末２００がモバイル用の通信端末であってもよく、第２通信端末３００がモバイル用ではない通信端末であってもよい。
【００４８】
［アプリケーション生成支援システム１０の概要］
図１は、本発明の一実施形態に係るアプリケーション生成支援システムの概要を示す図である。図１に示すように、本発明に係るアプリケーション生成支援システム１０は、サーバ１００、第１通信端末２００、および第２通信端末３００を有する。サーバ１００は情報処理装置である。第１通信端末２００はモバイル用ではない通信端末である。第２通信端末３００はモバイル用の通信端末である。サーバ１００はデータベース１０２に接続されている。
【００４９】
サーバ１００、第１通信端末２００、および第２通信端末３００はそれぞれネットワーク４００に接続されている。本実施形態では、ネットワーク４００は社内ＬＡＮなどのローカルネットワークであるが、一般的なＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ（ＷＷＷ）であってもよい。第１通信端末２００は、ネットワーク４００を介してサーバ１００と通信する。同様に、第２通信端末３００は、ネットワーク４００を介してサーバ１００と通信する。
【００５０】
図１では、データベース１０２がサーバ１００に直接接続された構成を例示したが、この構成に限定されない。例えば、データベース１０２が直接ネットワーク４００に接続されていてもよい。
【００５１】
［サーバ１００のハードウェア構成］
図２は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバのハードウェア構成を示す概略図である。図２に示すように、サーバ１００は、サーバ制御部１１０、サーバ記録部１２０、およびサーバ通信部１３０を有する。
【００５２】
サーバ制御部１１０は、中央演算処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、レジスタやメモリなどの記憶装置を含む。サーバ制御部１１０は、メモリに一時的に記憶されたプログラムをＣＰＵによって実行し、第１通信端末２００および第２通信端末３００からの命令信号に応じて演算処理を行う。
【００５３】
サーバ記録部１２０は大容量のデータを記録することができる記録装置であり、演算処理に必要なプログラムなどが記録されている。サーバ記録部１２０に記録されているプログラムはサーバ制御部１１０によって読み出しされてサーバ制御部１１０の記憶装置に一時的に記憶される。また、サーバ記録部１２０は第１通信端末２００および第２通信端末３００から送信された情報を記録する。サーバ記録部１２０はハードディスクであってもよく、揮発性または不揮発性のメモリであってもよい。なお、上記のサーバ記録部１２０に記録される情報は、サーバ記録部１２０の代わりにデータベース１０２に記録されてもよい。
【００５４】
サーバ通信部１３０は、外部機器に対してデータを送受信可能に接続することができる制御装置であり、ネットワーク４００に対するデータの送受信を制御する。
【００５５】
［第１通信端末２００のハードウェア構成］
図３は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられる第１ユーザの通信端末のハードウェア構成を示す概略図である。図３に示すように、第１通信端末２００は、ＰＣ本体２１０、表示装置２２０、および入力装置２３０を有する。ＰＣ本体２１０は、端末記憶装置２１１、端末制御装置２１３、および端末通信部２１５を有する。図３では、第１通信端末２００としてデスクトップ型ＰＣを例示したが、この例に限定されない。第１通信端末２００はネットワーク４００を介してサーバ１００に接続することができ、サーバ１００から提供されたグラフィックユーザインターフェース（ＧＵＩ）を表示することができ、ＧＵＩに対してパラメータを設定または入力することができればよく、スマートフォン、携帯電話、タブレットＰＣ、ＰＤＡ、ノートＰＣ、ＰＨＳであってもよい。
【００５６】
端末記憶装置２１１は、第１通信端末２００に特定の機能を実行させるためのプログラムおよび第１通信端末２００を所有するユーザの端末情報等のデータを記録する。端末記憶装置２１１として、ハードディスク、フラッシュメモリ等の不揮発性メモリおよびＳＲＡＭ、ＤＲＡＭ等の揮発性メモリが用いられる。プログラム等のデータは不揮発性メモリに記録され、プログラムを実行する際に不揮発性メモリから読み出されて揮発性メモリに一時的に記憶される。
【００５７】
端末制御装置２１３は、ＣＰＵなどの演算回路やメモリおよびレジスタなどの記憶回路を有する。端末制御装置２１３は、端末記憶装置２１１に記録されたプログラムをＣＰＵによって実行し、第１通信端末２００によって入力された命令信号に応じて、第１通信端末２００の各種機能を実現する。
【００５８】
端末通信部２１５は、外部機器に対してデータを送受信可能に接続することができる制御装置であり、ネットワーク４００に対するデータの送受信を制御する。
【００５９】
［第２通信端末３００のハードウェア構成］
図４は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられる第２ユーザの通信端末のハードウェア構成を示す概略図である。図４に示すように、第２通信端末３００は、端末記録部３１０、端末制御部３２０、端末通信部３３０、ディスプレイ３４０、カメラ３５０、操作ボタン３６０、スピーカ３７０、およびマイク３８０を有する。
【００６０】
端末記録部３１０は、第２通信端末３００に特定の機能を実行させるためのプログラム、第２通信端末３００にインストールされたアプリケーションプログラム、および第２通信端末３００を所有するユーザの端末情報等のデータを記録する。端末記録部３１０として、フラッシュメモリ等の不揮発性メモリおよびＳＲＡＭ、ＤＲＡＭ等の揮発性メモリが用いられる。プログラム等のデータは不揮発性メモリに記録され、プログラムを実行する際に不揮発性メモリから読み出されて揮発性メモリに一時的に記憶される。
【００６１】
端末制御部３２０は、ＣＰＵなどの演算回路やメモリおよびレジスタなどの記憶回路を有する。端末制御部３２０は、端末記録部３１０に記録されたプログラムをＣＰＵによって実行し、第２通信端末３００によって入力された命令信号に応じて、第２通信端末３００の各種機能を実現する。
【００６２】
端末通信部３３０は、外部機器に対してデータを送受信可能に接続することができる制御装置であり、ネットワーク４００に対するデータの送受信を制御する。また、端末通信部３３０は全地球測位システム（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ；ＧＰＳ）機能を有していてもよい。ＧＰＳ機能は第２通信端末３００のネイティブ機能の一つである。ＧＰＳ機能を有効にするアプリケーションを起動すると、端末通信部３３０は上空の衛星からの信号を受信し、第２通信端末３００の現在位置を知ることができる。
【００６３】
ディスプレイ３４０は、液晶ディスプレイ、有機ＥＬディスプレイなどを使用することができる。また、ディスプレイ３４０はタッチセンサを有していてもよい。タッチセンサは、抵抗膜方式、静電容量方式、光学式のセンサなどを使用することができる。
【００６４】
カメラ３５０は、ディスプレイ３４０と反対側に設けられている。つまり、ディスプレイ３４０が設けられた側を表面とすると、カメラ３５０は裏面に設けられている。なお、カメラ３５０とは別個のカメラが表面に設けられていてもよい。カメラ３５０は、レンズユニットおよび撮像素子を有している。カメラ３５０の機能は第２通信端末３００のネイティブ機能の一つである。カメラ３５０の機能を有効にするアプリケーションを起動すると、レンズユニットを介して撮像素子で検知される映像がディスプレイ３４０に表示される。この映像が撮像素子で検知されている間にユーザによって作動指示が入力されると、端末制御部３２０は、その作動指示に応じて撮像素子で検知された映像の静止画像を取得する。
【００６５】
図４では、第２通信端末３００が操作ボタン３６０、スピーカ３７０、およびマイク３８０を有する構成を例示したが、この構成に限定されない。必要がなければ、操作ボタン３６０、スピーカ３７０、およびマイク３８０は省略されてもよい。
【００６６】
図４では、第２通信端末３００の一例として、スマートフォンを示したが、アプリケーション生成支援システム１０に用いる第２通信端末３００はスマートフォンに限定されない。アプリケーション生成支援システム１０に用いる第２通信端末３００として、スマートフォン以外にも携帯電話、タブレットＰＣ、ＰＤＡ、ノートＰＣ、ＰＨＳなどが用いられてもよい。
【００６７】
［サーバ１００の機能構成］
図５は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの機能構成を示すブロック図である。図５に示すように、サーバ１００は、アプリケーション開発支援ツール１４０およびビルドシェル１５０を有する。アプリケーション開発支援ツール１４０は、ＧＵＩ提供部１４１およびパラメータ受付部１４３を有する。ビルドシェル１５０は、パラメータ受信部１５１、パラメータチェック部１５３、ファイル設定部１５５、アプリケーションパッケージ生成部１５７、およびダウンロード（ＤＬ）情報提供部１５９を有する。上記の各機能部の機能は、サーバ１００のサーバ制御部１１０がサーバ記録部１２０に記録されたプログラムをＣＰＵによって実行することで実現される。なお、本実施形態では、１つのサーバ１００にアプリケーション開発支援ツール１４０およびビルドシェル１５０が含まれる構成を例示したが、この構成に限定されない。例えば、アプリケーション開発支援ツール１４０およびビルドシェル１５０がそれぞれ異なるサーバに含まれており、これらのサーバが協働することで、アプリケーション生成支援システム１０が実現されてもよい。
【００６８】
ＧＵＩ提供部１４１は、第１通信端末２００を操作する第１ユーザに対して、アプリケーションに搭載される機能を設定するためのパラメータを選択または入力するインターフェースを提供する。ＧＵＩ提供部１４１によって提供されたインターフェースは第１通信端末２００の表示装置２２０に表示される。
【００６９】
パラメータ受付部１４３は、ＧＵＩ提供部１４１によって提供されたインターフェースに対して、第１通信端末２００によって選択または入力されたパラメータを受け付ける。
【００７０】
アプリケーション開発支援ツール１４０には、アプリケーションを開発するために必要なツールが格納されている。つまり、アプリケーション開発支援ツール１４０には、アプリケーションの開発に必要な機能プログラムのテンプレートが複数登録されている。ＧＵＩ提供部１４１は、複数のテンプレートを選択することができるインターフェースを第１ユーザに提供する。上記のテンプレートでは、アプリケーションがインストールされる第２通信端末３００の基本的な動作が規定されている。
【００７１】
アプリケーション開発支援ツール１４０には、例えば、テキストエディタ、インターフェースビルダ、デバッガ、コンパイラ、およびＯＳシミュレータなどが格納されている。テキストエディタはプログラムを書くためのツールである。例えば、テキストエディタはプログラムの自動入力およびプログラム構文の強調（シンタックスハイライト）の機能を有する。インターフェースビルダは、アプリケーションのインターフェースを作るためのツールである。例えば、インターフェースビルダは、ボタンおよびスイッチなどの部品をドラッグ＆ドロップによって配置することで、インターフェースを作成する。デバッガは、プログラムの動作に問題がないかチェックするために、プログラムの実行途中で動作を止めて中の状態を確認するツールである。コンパイラは、プログラムをコンピュータが理解できる形式に変換するツールである。ＯＳシミュレータは、アプリケーションをダウンロードする通信端末のＯＳの動作に似た動作をする「シミュレータ」によって、アプリケーションの動作を確認するツールである。
【００７２】
第１ユーザが、ＧＵＩ提供部１４１によって提供されたテンプレートから希望する機能プログラムを選択すると、パラメータ受付部１４３は、特定の機能プログラムが選択されたことをパラメータとして受け付ける。
【００７３】
なお、アプリケーション開発支援ツール１４０として、例えばＸｃｏｄｅ（登録商標）、ＪＡＶＡ（登録商標）のソフトウェア開発キット（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｏｐｍｅｎｔ  Ｋｉｔ；ＳＤＫ）、またはＡｎｄｒｏｉｄ  ＳＤＫを用いることができる。アプリケーション開発支援ツール１４０として、Ｘｃｏｄｅが用いられる場合、Ｊｅｎｋｉｎｓ（登録商標）を用いてもよい。Ｊｅｎｋｉｎｓとは、ＪＡＶＡで記述されたオープンソース継続的インテグレーションツールである。
【００７４】
パラメータ受信部１５１は、第１通信端末２００を操作する第１ユーザによって設定されたパラメータを、ネットワーク４００を介して受信する。詳細は後述するが、第１ユーザによって設定されるパラメータは、アプリケーションがインストールされる第２通信端末３００の動作に関連するパラメータである。換言すると、当該パラメータは後述する設定ファイル（ＯＳ設定ファイルおよびアプリケーション設定ファイル）およびプラグインファイルに関連するパラメータを含むパラメータである。
【００７５】
パラメータチェック部１５３は、パラメータ受信部１５１が受信したパラメータの形式が規定の形式に適合しているか否かをチェックする。例えば、アプリケーション生成支援システム１０によってハイブリッドアプリケーションが生成され、第２ユーザの第２通信端末３００にインストールされる場合、第２通信端末３００において当該アプリケーションを起動したときに、第２通信端末３００が最初にアクセスするＷｅｂページの初期ＵＲＬを設定する必要がある。ＵＲＬは『ｈｔｔｐ：／／』や『ｈｔｔｐｓ：／／』のように形式が規定されているため、パラメータチェック部１５３は、初期ＵＲＬの形式が上記の形式に適合しているか否かをチェックする。詳細は後述するが、パラメータチェック部１５３がパラメータの形式が規定の形式ではないと判断すると、エラーメッセージを通知する。パラメータチェック部１５３は上記の機能の他にも、アプリケーションを生成するために必要な設定ファイルの形式をチェックする。
【００７６】
ファイル設定部１５５は、パラメータ受信部１５１が受信し、パラメータチェック部１５３のチェックを通過したパラメータに応じてアプリケーションの動作を規定する設定ファイルを設定する。換言すると、ファイル設定部１５５は、第２通信端末３００の動作に関連するパラメータに応じてアプリケーションの動作を規定する設定ファイルを設定する。
【００７７】
ここで、ファイル設定部１５５のさらに詳細な機能について、図６を用いて説明する。図６は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの設定ファイル設定部の詳細を示すブロック図である。図６に示すように、ファイル設定部１５５は、パラメータ確認部１５５１、テンプレート関連付け部１５５３、およびプログラム更新部１５５５を有する。
【００７８】
パラメータ確認部１５５１は、第１ユーザによって設定されたパラメータを確認し、アプリケーションに組み込まれる機能を決定する。パラメータ確認部１５５１は、確認されたパラメータに基づき、アプリケーション開発支援ツール１４０に予め準備されている複数のテンプレートから、当該パラメータに関連するテンプレートを選択する。
【００７９】
テンプレート関連付け部１５５３は、パラメータ確認部１５５１によって選択されたテンプレートを互いに関連付ける。つまり、テンプレート関連付け部１５５３は、アプリケーションに組み込まれる機能の集合体を定義する。テンプレート関連付け部１５５３によって互いに関連付けられた機能が、最終的に生成されるアプリケーションが有する機能になる。
【００８０】
プログラム更新部１５５５は、テンプレート関連付け部１５５３によって互いに関連付けられたテンプレートによって規定された動作の各々が、第２通信端末３００にインストールされたアプリケーション上で実現可能となるように、当該テンプレートの一部を更新する。上記のテンプレートでは、アプリケーションがインストールされる第２通信端末３００の基本的な動作が規定されているが、更新前のテンプレートでは、第２通信端末３００の動作に合わせてアプリケーションの表示を調整することができない場合がある。プログラム更新部１５５５は、第２通信端末３００の動作に合わせてアプリケーションの表示が正常に調整されるように、テンプレートの一部を更新する。
【００８１】
例えば、第２通信端末３００を右に９０度回転させる動作が規定されたテンプレートを更新せずにアプリケーションに組み込んだ場合、第２通信端末３００を右に９０度回転させても、アプリケーションの表示が９０度回転した第２通信端末３００の画面に適した表示にならない場合がある。このような場合であっても、プログラム更新部１５５５によるテンプレートの更新によって、第２通信端末３００の回転動作に応じてアプリケーションの表示が回転した第２通信端末３００の状態に適した表示になる。
【００８２】
後述するように、テンプレートには、ＯＳ設定ファイル用のテンプレートおよびアプリケーション設定ファイル用のテンプレートがある。ＯＳ設定ファイル用のテンプレートは、異なる種類の第２通信端末３００に共通する動作が規定されたテンプレートであり、第２通信端末３００の動作に関連したアプリケーションの動作が規定されている。アプリケーション設定ファイル用のテンプレートは、第１ユーザによって入力されるパラメータを受け付けるブランクを含むテンプレートであり、第２通信端末３００の動作に関連したアプリケーションの動作が規定されている。ＯＳ設定ファイルは、ＯＳ設定ファイル用のテンプレートの一部を第１通信端末２００によって設定されたパラメータに置換することで得られる。一方、アプリケーション設定ファイルは、アプリケーション設定ファイル用のテンプレートの一部に対して第１通信端末２００によって入力された情報を上書きすることで得られる。
【００８３】
以下、図５に戻ってビルドシェル１５０の残りの機能部について説明する。
【００８４】
アプリケーションパッケージ生成部１５７は、上記のようにファイル設定部１５５によって設定された設定ファイルに基づいてアプリケーションパッケージを生成する。具体的には、アプリケーションパッケージ生成部１５７は、上記の設定ファイルをコンパイルし、アプリケーションを第２通信端末３００にインストール可能なアーカイブ形式のファイルを生成する。
【００８５】
ＤＬ情報提供部１５９は、アプリケーションパッケージ生成部１５７によって生成されたアプリケーションパッケージのダウンロード情報を第２通信端末３００に提供する。例えば、ＤＬ情報提供部１５９は、当該アプリケーションパッケージが登録されたダウンロードページを生成し、生成されたダウンロードページのＵＲＬを第２通信端末３００に提供してもよい。ダウンロードページのＵＲＬはアプリケーション開発支援ツール１４０によって提供されるインターフェースを介して第２通信端末３００に表示されてもよい。
【００８６】
［アプリケーション生成支援システム１０の動作フロー］
図７〜図１５を用いて、図５および図６に示したアプリケーション生成支援システム１０の各機能ブロックの動作について、フローチャートおよびユーザに表示されるインターフェースの一例を用いて詳しく説明する。
【００８７】
まず、図７〜図１３を用いて、第１ユーザが設定したパラメータに基づいてアプリケーションを生成し、当該アプリケーションをダウンロード可能に提供する動作について説明する。図７は、本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション生成動作を示すフローチャートである。図７では、第１ユーザが第１通信端末２００を用いてアプリケーションに必要な機能を設定し、その設定に基づいてビルドシェル１５０がアプリケーションパッケージを生成し、そのアプリケーションパッケージのダウンロード情報を提供する動作について説明する。
【００８８】
まず、第１ユーザの操作によって、第１通信端末２００がネットワーク４００を介してアプリケーション開発支援ツール１４０にＨＴＴＰ接続する（ステップ５０１）。第１通信端末２００によってアクセスされたアプリケーション開発支援ツール１４０は、第１通信端末２００にパラメータ設定ＧＵＩを提供する（ステップ５１１）。提供されたパラメータ設定ＧＵＩは第１通信端末２００の表示装置２２０によって第１ユーザに表示される。
【００８９】
第１通信端末２００に表示されるパラメータ設定ＧＵＩの一例について、図８を用いて説明する。図８は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ入力動作におけるインターフェースである。図８に示すように、インターフェース６００には、プロジェクト名６１０、項目名６２０、入力欄６３０、およびアプリケーション生成ボタン（ビルドボタン）６４０が含まれる。
【００９０】
プロジェクト名６１０にはアプリケーションを生成するプロジェクトを識別するための名称が表示される。プロジェクト名６１０に表示される名称はユーザによって指定された名称であってもよく、サーバによって自動的に割り当てられた名称であってもよい。
【００９１】
項目名６２０にはアプリケーションによって実行される機能を示す名称が表示される。図８の項目名６２０に表示された項目の詳細は後述する。
【００９２】
入力欄６３０にはユーザによる入力または選択を受け付ける領域が設けられている。入力欄６３０の入力形式は項目名６２０によって異なる。例えば、「ＣＦＢＵＮＤＬＥ＿ＤＩＳＰＬＡＹ＿ＮＡＭＥ」および「ＩＮＦＯ＿ＣＦＢＵＮＤＬＥ＿ＶＥＲＳＩＯＮ」の入力欄６３０は、任意の文字列を受け付ける。これらの項目名６２０はアプリケーションを識別するための情報として用いられる。
【００９３】
「ＬＡＮＤＳＣＡＰＥ＿ＬＥＦＴ」、「ＰＯＲＴＲＡＩＴ＿ＵＰＳＩＤＥ＿ＤＯＷＮ」、および「ＬＡＮＤＳＣＡＰＥ＿ＲＩＧＨＴ」の入力欄６３０はチェックボックス形式の入力を受け付ける。つまり、ユーザは、これらの項目名に関連する機能をアプリケーションに搭載するか否かを選択によって決定することができる。
【００９４】
「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」の入力欄６３０は規定の形式の文字列を受け付ける。この入力欄６３０には、ユーザがアプリケーションを起動したときに表示されるＷｅｂページのＵＲＬが入力される。つまり、この入力欄６３０には、『ｈｔｔｐ：／／』や『ｈｔｔｐｓ：／／』のように規定の形式の文字列が入力される。なお、この項目について、入力された文字列が規定の形式になっているか否かをテストする機能が設けられていてもよい。例えば、テストボタンが配置されており、テストボタンを選択すると一時的に入力されたＵＲＬが表示されてもよい。または、この項目の入力欄６３０の入力内容が更新される度に自動的にテストが行われ、入力されたＵＲＬに該当するページの存在の有無を確認し、入力されたＵＲＬの妥当性がインターフェース６００上でユーザに通知してもよい。
【００９５】
「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」の入力欄６３０はアプリケーション設定ファイルを設定するためのファイルが格納された位置を示すアドレスを受け付ける。この入力欄６３０には、ユーザが直接アドレスを入力してもよく、ブランクボックスの右の「参照」をクリックすることで、参照するアドレスを指定してもよい。これらの項目名６２０はアプリケーションに搭載される機能である。
【００９６】
アプリケーションに搭載される機能に関連する項目名６２０のうち、「ＬＡＮＤＳＣＡＰＥ＿ＬＥＦＴ」、「ＰＯＲＴＲＡＩＴ＿ＵＰＳＩＤＥ＿ＤＯＷＮ」、および「ＬＡＮＤＳＣＡＰＥ＿ＲＩＧＨＴ」のように、予め機能が決まっている項目については、その機能をアプリケーションに搭載するか否かを決定するだけでユーザのパラメータ設定が完了する。
【００９７】
入力欄６３０に必要事項を入力した後にビルドボタン６４０を選択することで、ユーザの操作は完了し、入力欄６３０に入力された事項をユーザによって設定されたパラメータとしてサーバ１００に送信する。
【００９８】
図９を用いて、図８に例示した項目名６２０および項目名に関連する機能について説明する。図９は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータの詳細を説明する図である。なお、図８および図９に示す項目名６２０は、アプリケーションの機能の一例を示すものであって、本発明のアプリケーションの機能を限定するものではない。
【００９９】
「ＣＦＢＵＮＤＬＥ＿ＤＩＳＰＬＡＹ＿ＮＡＭＥ」は、アプリケーション名を指定する項目である。この項目では、アプリケーションのアイコンの表示文字を設定するための文字列が設定される。つまり、「ＣＦＢＵＮＤＬＥ＿ＤＩＳＰＬＡＹ＿ＮＡＭＥ」は特定のアプリケーションを明確に識別するために用いられる。
【０１００】
「ＩＮＦＯ＿ＣＦＢＵＮＤＬＥ＿ＶＥＲＳＩＯＮ」は、アプリケーションのバンドルバージョンを指定する項目である。この項目では、アプリケーションのバージョンを設定するための文字列が設定される。「ＩＮＦＯ＿ＣＦＢＵＮＤＬＥ＿ＶＥＲＳＩＯＮ」は特定のアプリケーションのバージョンを識別するために用いられる。
【０１０１】
「ＬＡＮＤＳＣＡＰＥ＿ＬＥＦＴ」、「ＬＡＮＤＳＣＡＰＥ＿ＲＩＧＨＴ」は、第２通信端末３００を左横、右横に回転した場合の画面制御を指定する項目である。これらの項目では、第２通信端末３００の画面を左横、右横に回転したときに、第２通信端末３００の画面上でアプリケーションを正面表示させるか否かをチェックの有無で設定される。
【０１０２】
「ＰＯＲＴＲＡＩＴ＿ＵＰＳＩＤＥ＿ＤＯＷＮ」は、第２通信端末３００を上下逆さに回転した場合の画面制御を指定する項目である。この項目では、第２通信端末３００の画面を上下逆さに回転したときに、第２通信端末３００の画面上でアプリケーションを正面表示させるか否かをチェックの有無で設定される。
【０１０３】
「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」は、アプリケーションのスタートページとして指定されるＷｅｂページのＵＲＬを指定する項目である。この項目では、アプリケーションを起動したときに表示されるＷｅｂページのＵＲＬを設定するための文字列が設定される。この項目では、ＵＲＬを表示するために、『ｈｔｔｐ：／／』や『ｈｔｔｐｓ：／／』などの規定の形式の文字列が設定される。
【０１０４】
「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」は、アプリケーション設定ファイルを指定する項目である。この項目では、アプリケーションに搭載したいアプリケーション設定ファイルを設定し、当該設定ファイルをサーバ１００にアップロードする。「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」において設定されるアプリケーション設定ファイルは、第１通信端末２００を操作する第１ユーザによって作成された設定ファイルであってもよく、他の第３ユーザによって作成された設定ファイルであってもよい。
【０１０５】
以降、図７に戻ってアプリケーション生成動作を示すフローチャートについて説明する。
【０１０６】
第１通信端末２００が、図８および図９に示された各項目に対して必要事項を入力または選択することで、アプリケーションに搭載される機能のオプションを設定する（ステップ５０３）。オプションの設定が完了したら、第１通信端末２００は図８のビルドボタン６４０を選択し（ステップ５０５）、アプリケーション生成をアプリケーション開発支援ツール１４０に要請する。ステップ５０５のビルドボタン選択によって、図８のインターフェース６００において設定された各種パラメータが、第１通信端末２００からサーバ１００のアプリケーション開発支援ツール１４０に送信される。
【０１０７】
アプリケーション開発支援ツール１４０は、第１通信端末２００から送信されたパラメータを受け付け、受け付けたパラメータをビルドシェル１５０に転送する（ステップ５１３）。
【０１０８】
ビルドシェル１５０は、アプリケーション開発支援ツール１４０によって転送されたパラメータを受信する（ステップ５２１）。ビルドシェル１５０は、受信したパラメータをチェックする（ステップ５２３）。なお、ステップ５２３のパラメータチェックは、後述する設定ファイルが設定される前に行われる。ステップ５２３において、パラメータをチェックするシーケンスについて、図１０を用いて説明する。
【０１０９】
図１０は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータチェックのシーケンスを説明する図である。図１０に示すように、ステップ５２１で受信されたパラメータのチェックが行われる（ステップ５２３１）。ステップ５２３１では、例えば、設定されたパラメータの形式が規定の形式に適合しているか否か、およびアプリケーション設定ファイルの形式が規定の形式に適合しているか否かなどの設定状態がチェックされる。図８および図９に示した例では、「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」に入力されたＵＲＬが『ｈｔｔｐ：／／』または『ｈｔｔｐｓ：／／』の形式になっているか否かがチェックされる。同様に、「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」でアプリケーション設定ファイルが規定のファイル形式になっているか否かがチェックされる。また、詳細は後述するが、アプリケーションに搭載される機能として第２通信端末３００のネイティブ機能に関連するプラグインファイルが規定のファイル形式になっているか否かがチェックされる。
【０１１０】
ステップ５２３１のパラメータチェックで、設定されたパラメータの形式が規定の形式に適合していれば（ステップ５２３１の「ＯＫ」）、パラメータチェックが完了したと判断され（ステップ５２３３）、処理が終了する。一方、設定されたパラメータの形式が規定の形式に適合していなければ（ステップ５２３１の「ＮＧ」）、エラーメッセージを通知し（ステップ５２３５）、処理が終了する。エラーメッセージの通知は、例えば図８のインターフェース６００を介して第１通信端末２００に表示される。
【０１１１】
図１１は、本発明の一実施形態に係るアプリケーション生成支援システムのエラーメッセージの一例を説明する図である。図１１では、エラーメッセージ通知の一例として、「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」、「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」、および「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」の項目に関するエラーメッセージが挙げられている。「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」について、『ｈｔｔｐ：／／』または『ｈｔｔｐｓ：／／』で始まる文字列以外の文字列が入力された場合に、「［ＩＮＰＵＴ  ＥＥＲＯＲ］ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬの入力値が不正です。」というエラーメッセージが表示される。「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」について、ファイル名が「ａｐｐｌｉｃａｔｉｏｎ．ｐｌｉｓｔ」以外のファイルがアップロードされた場合に、「［ＩＮＰＵＴ  ＥＥＲＯＲ］ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴの入力値が不正です。」というエラーメッセージが表示される。「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」について、規定のファイル形式のファイル以外がアップロードされた場合に、「［ＩＮＰＵＴ  ＥＥＲＯＲ］ＰＬＵＧＩＮ＿ＦＩＬＥＳの入力値が不正です。」というエラーメッセージが表示される。
【０１１２】
以降、図７に戻ってアプリケーション生成動作を示すフローチャートについて説明する。
【０１１３】
ステップ５２３のパラメータチェックが終了すると、ＯＳ設定ファイルの置換処理が行われる（ステップ５２５）。続いて、アプリケーション設定ファイルの上書き処理が行われる（ステップ５２７）。これらの動作を併せて設定ファイルを更新するという場合がある。ここで、ステップ５２５およびステップ５２７において、設定ファイルを更新するシーケンスについて図１２を用いて説明する。また、ステップ５２５およびステップ５２７で処理される設定ファイルについて、図１３を用いて説明する。
【０１１４】
図１２は、本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルを設定するシーケンスを説明する図である。図１２では、スタートページ指定ＵＲＬおよびＯＳ設定ファイルは必須の設定項目である場合について説明する。図１２に示すように、まずスタートページ指定ＵＲＬが設定される（ステップ５２６１）。続いて、ＯＳ設定ファイルが設定（置換処理）される（ステップ５２６３）。続いて、アプリケーション設定ファイルの設定の要否が確認される（ステップ５２６５）。ステップ５２６５では、ステップ５２１およびステップ５２３を通過したパラメータの設定状態を確認することで、アプリケーション設定ファイルの設定の要否が確認される。ステップ５２６５で、アプリケーション設定ファイルの設定が必要であることが確認されれば（ステップ５２６５の「ＯＫ」）、アプリケーション設定ファイルが設定（上書き処理）され（ステップ５２６７）、処理が終了する。一方、アプリケーション設定ファイルの設定が必要ではないことが確認されなければ（ステップ５２６５の「ＮＧ」）、アプリケーション設定ファイルの設定は行われずに処理が終了する。
【０１１５】
図１３は、本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルの一例を説明する図である。図１３の「アイコン指定」、「アプリケーション名指定」、および「画面の回転制御指定」はＯＳ設定ファイルに該当する。つまり、図８および図９の「ＣＦＢＵＮＤＬＥ＿ＤＩＳＰＬＡＹ＿ＮＡＭＥ」、「ＩＮＦＯ＿ＣＦＢＵＮＤＬＥ＿ＶＥＲＳＩＯＮ」、「ＬＡＮＤＳＣＡＰＥ＿ＬＥＦＴ」、「ＰＯＲＴＲＡＩＴ＿ＵＰＳＩＤＥ＿ＤＯＷＮ」、および「ＬＡＮＤＳＣＡＰＥ＿ＲＩＧＨＴ」はＯＳ設定ファイルに該当する。これらのＯＳ設定ファイルに係る動作は、複数の第２通信端末３００に共通する動作である。図１３の「アドレスバー表示」、「画面のコピー＆ペースト制御」、「通信プロトコル制限」、「無操作タイムアウト指定」、「シングルサインオン設定」、および「バックボタンの利用制限」はアプリケーション設定ファイルに該当する。つまり、上記の項目は「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」の一例である。これらのアプリケーション設定ファイルに係る動作は、第１通信端末２００によって入力された第２通信端末３００の動作であり、複数の第２通信端末３００に共通する動作であってもよく、特定の第２通信端末３００に固有の動作であってもよい。
【０１１６】
換言すると、本実施形態の設定ファイルは、ＯＳ設定ファイルおよびアプリケーション設定ファイルを含む。ＯＳ設定ファイルは、ビルドシェル１５０が受信したパラメータに関連し、複数の第２通信端末３００の動作に共通するアプリケーションの動作を規定する設定ファイルである。アプリケーション設定ファイルは、ビルドシェル１５０が受信したパラメータに関連し、第１通信端末２００を操作する第１ユーザによって入力された情報に基づくアプリケーションの動作を規定する設定ファイルである。なお、図１３に示すＯＳ設定ファイルおよびアプリケーション設定ファイルは一例であり、本発明の「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」を限定するものではない。
【０１１７】
以降、図７に戻ってアプリケーション生成動作を示すフローチャートについて説明する。
【０１１８】
ステップ５２５およびステップ５２７の設定ファイルの更新が終了すると、ステップ５２５で置換されたＯＳ設定ファイルおよびステップ５２７で上書きされたアプリケーション設定ファイルを含むプロジェクトファイルが生成される（ステップ５２９）。ここで、プロジェクトファイルとは、アプリケーション開発支援ツール１４０においてアプリケーションを構築するために必要なファイルやリソース（構成要素）が格納されたファイルである。プロジェクトファイルは、アプリケーションの構築に必要な構成要素を一括して収容し、さらに構成要素間の関係も管理している。
【０１１９】
ステップ５２９で生成されたプロジェクトファイルに対して、各ファイルのコンパイルを含むビルド処理を行うことで、アプリケーションパッケージが生成される（ステップ５３１）。アプリケーションパッケージとは、アプリケーションを第２通信端末３００にインストールするためのインストーラとして機能するものである。アプリケーションパッケージは、アプリケーションの実行ファイルに加え、上記で設定された設定ファイルを含むアーカイブ形式のファイルである。
【０１２０】
続いて、ステップ５３１で生成されたアプリケーションパッケージのダウンロード情報を生成する（ステップ５３３）。例えば、アプリケーションパッケージをあるダウンロードページにアップロードし、当該ダウンロードページのＵＲＬを生成する。そして、ステップ５３３で生成されたダウンロード情報は、ビルドシェル１５０からアプリケーション開発支援ツール１４０に提供される（ステップ５３５）。例えば、上記のダウンロードページのＵＲＬがアプリケーション開発支援ツール１４０に提供される。
【０１２１】
アプリケーション開発支援ツール１４０は、ステップ５３５で提供されたダウンロード情報を受信し（ステップ５１５）、当該ダウンロード情報を、ダウンロード情報提供ＧＵＩを介して第１通信端末２００および第２通信端末３００に提供する（ステップ５１５）。
【０１２２】
次に、図１４および図１５を用いて、生成されたアプリケーションをユーザがダウンロードする動作について説明する。図１４は、本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション取得動作を示すフローチャートである。
【０１２３】
まず、第２ユーザの操作によって、第２通信端末３００がネットワーク４００を介してアプリケーション開発支援ツール１４０にＨＴＴＰ接続し（ステップ５４１）、アプリケーションパッケージを要求する（ステップ５４３）。第２通信端末３００によってアクセスされたアプリケーション開発支援ツール１４０は、第２通信端末３００にダウンロード情報ＧＵＩを提供する（ステップ５５１）。提供されたダウンロード情報ＧＵＩは第２通信端末３００のディスプレイ３４０によって第２ユーザに表示される。
【０１２４】
第２通信端末３００に表示されるダウンロード情報ＧＵＩの一例について、図１５を用いて説明する。図１５は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ取得動作におけるインターフェースである。図１５に示すように、インターフェース６５０には、プロジェクト名６６０、項目名６７０、設定値６８０、およびダウンロードボタン６９０が含まれる。
【０１２５】
プロジェクト名６６０には、図８のプロジェクト名６１０に対応するプロジェクト名が表示される。項目名６７０には、図８の項目名６２０のうちユーザによって設定された項目が表示される。なお、図１５では、ＯＳ設定ファイルが「ＩＮＦＯ＿ＰＬＩＳＴ」にまとめられている。設定値６８０には、図８でユーザによって設定され、生成されたアプリケーションに搭載された機能が表示される。「ＣＦＢＵＮＤＬＥ＿ＤＩＳＰＬＡＹ＿ＮＡＭＥ」、「ＩＮＦＯ＿ＣＦＢＵＮＤＬＥ＿ＶＥＲＳＩＯＮ」、および「ＡＰＰ＿ＳＴＡＲＴ＿ＰＡＧＥ＿ＵＲＬ」の設定値６８０には、それぞれ図８で入力された文字列が表示されている。「ＩＮＦＯ＿ＰＬＩＳＴ」の設定値６８０には、図８でチェックされた項目が表示されている。上記の設定事項を確認した後にダウンロードボタン６９０を選択することで、第２通信端末３００にアプリケーションパッケージがダウンロードされる。
【０１２６】
以降、図１４に戻ってアプリケーション取得動作を示すフローチャートについて説明する。
【０１２７】
第２通信端末３００は図１５に示されたダウンロードボタン６９０を選択する（ステップ５４５）ことで、アプリケーションパッケージのダウンロードをアプリケーション開発支援ツール１４０に要請する。ステップ５４５に応じて、アプリケーション開発支援ツール１４０はアプリケーションパッケージを提供する（ステップ５５３）。そして、第２通信端末３００は提供されたアプリケーションパッケージをダウンロードする（ステップ５４７）。
【０１２８】
以上のように、第１実施形態にかかるアプリケーション生成支援システム１０によると、第１通信端末２００によってパラメータを設定するだけで、サーバ１００のビルドシェル１５０がアプリケーションパッケージを自動的に生成し、ダウンロード可能に第２通信端末３００に提供することができる。つまり、アプリケーション開発者への開発負担を軽減することができる。
【０１２９】
〈第２実施形態〉
図１６を用いて、本発明の第２実施形態に係るアプリケーション生成支援システム１０Ａ、ならびにアプリケーション生成支援システム１０Ａに用いるサーバ１００Ａ、第１通信端末２００Ａ、および第２通信端末３００Ａを動作させるためのプログラムについて詳細に説明する。なお、第２実施形態に係るアプリケーション生成支援システム１０Ａのサーバ１００Ａ、第１通信端末２００Ａ、および第２通信端末３００Ａの各々のハードウェア構成および機能構成について、第１実施形態に係るアプリケーション生成支援システム１０と同様のハードウェア構成および機能構成は説明を省略し、アプリケーション生成支援システム１０との相違点について説明する。
【０１３０】
第２実施形態では、アプリケーション設定ファイル用のテンプレートが第１ユーザおよび第２ユーザとは異なる第３ユーザによってアップロードされる構成について説明する。図１６は、本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション設定ファイル用のテンプレートの登録動作を示すフローチャートである。
【０１３１】
まず、第３ユーザの操作によって、第３通信端末２９０Ａがネットワーク４００Ａを介してアプリケーション開発支援ツール１４０ＡにＨＴＴＰ接続し（ステップ５６１Ａ）、アプリケーション設定ファイル用のテンプレートのアップロードを要求する（ステップ５６３Ａ）。第３通信端末２９０Ａによってアクセスされたアプリケーション開発支援ツール１４０Ａは、第３通信端末２９０Ａにアプリケーション設定ファイル用ＧＵＩを提供する（ステップ５７１Ａ）。提供されたアプリケーション設定ファイル用ＧＵＩは第３通信端末２９０Ａの表示装置によって第３ユーザに表示される。
【０１３２】
第３通信端末２９０Ａは、アプリケーション設定ファイル用のテンプレートを準備し（ステップ５６５Ａ）、ステップ５７１Ａで提供されたＧＵＩを介して準備されたテンプレートをサーバ１００Ａのアプリケーション開発支援ツール１４０Ａにアップロードする（ステップ５６７Ａ）。ステップ５６５Ａで準備されたテンプレートは第３通信端末２９０Ａを操作する第３ユーザによって作成されたものであってもよく、その他のユーザによって作成されたものであってもよい。アップロードされたテンプレートはアプリケーション開発支援ツール１４０Ａに登録される（ステップ５７３Ａ）。ステップ５７３Ａで登録されたアプリケーション設定ファイル用のテンプレートは、例えば、図７のステップ５１１のパラメータ設定ＧＵＩとして第１通信端末２００に提供される。つまり、第２実施形態において第１通信端末２００Ａに提供されるアプリケーション設定ファイル用のテンプレートは、第３ユーザまたはその他のユーザによって作成され、アプリケーション開発支援ツール１４０Ａにアップロードされたテンプレートである。
【０１３３】
以上のように、第２実施形態にかかるアプリケーション生成支援システム１０Ａによると、アプリケーション生成支援システム１０Ａに準備されたアプリケーション設定ファイル用のテンプレートが、第３通信端末２９０Ａによってアップロードされることで増加する。したがって、第１通信端末２００Ａは、パラメータ設定をする際に、多様なアプリケーション設定ファイル用のテンプレートを利用することができる。
【０１３４】
〈第３実施形態〉
図１７〜図２１を用いて、本発明の第３実施形態に係るアプリケーション生成支援システム１０Ｂ、ならびにアプリケーション生成支援システム１０Ｂに用いるサーバ１００Ｂ、第１通信端末２００Ｂ、および第２通信端末３００Ｂを動作させるためのプログラムについて詳細に説明する。なお、第３実施形態に係るアプリケーション生成支援システム１０Ｂのサーバ１００Ｂ、第１通信端末２００Ｂ、および第２通信端末３００Ｂの各々のハードウェア構成および機能構成について、第１実施形態に係るアプリケーション生成支援システム１０と同様のハードウェア構成および機能構成は説明を省略し、アプリケーション生成支援システム１０との相違点について説明する。
【０１３５】
［サーバ１００Ｂの機能構成］
本実施形態のアプリケーション生成支援システム１０Ｂにおけるサーバ１００Ｂの各機能の構成は、第１実施形態のサーバ１００の各機能の構成と同じである。したがって、図５を参照してサーバ１００Ｂの機能部について説明する。アプリケーション生成支援システム１０Ｂのビルドシェル１５０Ｂに含まれるファイル設定部１５５Ｂは、ＯＳ設定ファイルおよびアプリケーション設定ファイルに加えて、第２通信端末３００Ｂのネイティブ機能に関連するプラグインファイルを設定する点において、第１実施形態のファイル設定部１５５とは相違する。ファイル設定部１５５Ｂは、パラメータ受信部１５１Ｂが受信したパラメータにプラグインファイルに関連するパラメータが設定されている場合に、ＯＳ設定ファイルやアプリケーション設定ファイルと同様にプラグインファイルを設定する。
【０１３６】
ファイル設定部１５５Ｂは、図６に示すように、パラメータ確認部１５５１Ｂ、テンプレート関連付け部１５５３Ｂ、およびプログラム更新部１５５５Ｂを有する。パラメータ確認部１５５１Ｂは、第１実施形態のパラメータ確認部１５５１と同様の機能を有する。テンプレート関連付け部１５５３Ｂは、第１実施形態のテンプレート関連付け部１５５３と同様の機能に加え、プラグインファイル用のテンプレートをパラメータ確認部１５５１Ｂによって選択された他のテンプレートに関連付ける。プログラム更新部１５５５Ｂは、第１実施形態のプログラム更新部１５５５と同様の機能に加え、プラグインファイル用のテンプレートによって規定された動作の各々が、第２通信端末３００にインストールされたアプリケーション上で実現可能となるように、当該テンプレートの一部を更新する。
【０１３７】
上記のように、プラグインファイルは、例えば、カメラ、ＧＰＳ、マイク、加速度センサなど、第２通信端末３００Ｂの機器に固有のネイティブ機能をアプリケーションによって第２通信端末３００Ｂに実行させるための設定ファイルである。プラグインファイルは、ＯＳ設定ファイルおよびアプリケーション設定ファイルと同様に、ビルドシェル１５０Ｂが受信したパラメータに関連する設定ファイルである。
【０１３８】
第１実施形態で説明したように、アプリケーション開発支援ツール１４０Ｂには、ＯＳ設定ファイル用のテンプレートおよびアプリケーション設定ファイル用のテンプレートが予め準備されている。これらと同様に、アプリケーション開発支援ツール１４０Ｂには、プラグインファイル用のテンプレートが準備されている。このプラグインファイル用のテンプレートから、ビルドシェル１５０Ｂが受信したパラメータに関連するテンプレートが選択され、当該テンプレートの一部が更新されることで、プラグインファイルが設定される。なお、プラグインファイル用のテンプレートは予めアプリケーション開発支援ツール１４０Ｂに準備されていたものであってもよく、後述するように、他の第３ユーザによって作成されたものであってもよい。
【０１３９】
［アプリケーション生成支援システム１０Ｂの動作フロー］
図１７〜図２１を用いて、本実施形態のアプリケーション生成支援システム１０Ｂの各機能ブロックの動作について、フローチャートおよびユーザに表示されるインターフェースの一例を用いて詳しく説明する。
【０１４０】
まず、図１７〜図１９を用いて、第１通信端末２００Ｂによって設定されたパラメータに基づいてアプリケーションを生成し、当該アプリケーションをダウンロード可能に提供する動作について説明する。図１７は、本発明の一実施形態に係るアプリケーション生成支援システムのアプリケーション生成動作を示すフローチャートである。図１７のフローチャートは図７のフローチャートと類似しているが、図１７のフローチャートでは、ステップ５２７Ｂとステップ５２９Ｂとの間にプラグインファイルを設定するステップ５２８Ｂが設けられている点において、図７のフローチャートとは相違する。また、ステップ５２８Ｂが設けられていることに伴い、ステップ５１１Ｂで第１通信端末２００Ｂに提供されるインターフェース６００Ｂが図８のインターフェース６００とは相違する。以下の説明において、図７の動作フローと同じ動作については説明を省略し、図７の動作フローと異なる動作について説明する。
【０１４１】
まず、図１７のステップ５１１Ｂで第１通信端末２００Ｂに提供されるパラメータ設定ＧＵＩについて説明する。図１８は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ入力動作におけるインターフェースである。図１８に示すインターフェース６００Ｂは図８のインターフェース６００と類似しているが、図１８のインターフェース６００Ｂの項目名６２０Ｂでは「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」の下に「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」が設けられている点において、図８のインターフェース６００とは相違する。
【０１４２】
「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」の入力欄６３０Ｂはプラグインファイル用のテンプレートが格納された位置を示すアドレスを受け付ける。この入力欄６３０Ｂには、ユーザが直接アドレスを入力してもよく、ブランクボックスの右の「参照」をクリックすることで、参照するアドレスを指定してもよい。なお、プラグインファイル用のテンプレートは、指定されたアドレスに圧縮ファイル形式で格納されている。ただし、当該ファイルは圧縮ファイル形式以外の形式で格納されていてもよい。
【０１４３】
入力欄６３０Ｂに必要事項を入力した後にビルドボタン６４０Ｂを選択することで、ユーザの操作は完了し、入力欄６３０Ｂに入力された事項をユーザによって設定されたパラメータとしてサーバ１００Ｂに送信する。
【０１４４】
上記のように、インターフェース６００Ｂにプラグインファイルを設定するための項目が設けられている点、および第１通信端末２００Ｂからアプリケーション開発支援ツール１４０Ｂを介してビルドシェル１５０Ｂに送信されるパラメータにインターフェース６００Ｂで設定されたプラグインファイルに関連するパラメータが含まれる点以外は、図１７のステップ５２７Ｂまでの動作は図７と同様なので説明を省略する。
【０１４５】
図１７に示すように、ステップ５２７Ｂのアプリケーション設定ファイルの上書き処理に続いて、プラグインファイルの設定が行われる（ステップ５２８Ｂ）。プラグインファイルの設定は、ＯＳ設定ファイルの置換およびアプリケーション設定ファイルの上書き処理と同様に、設定ファイルを更新するという場合がある。ここで、ステップ５２８Ｂにおいて、プラグインファイルの設定するシーケンスについて図１９を用いて説明する。
【０１４６】
図１９は、本発明の一実施形態に係るアプリケーション生成支援システムの設定ファイルを設定するシーケンスを説明する図である。図１９では、スタートページ指定ＵＲＬおよびＯＳ設定ファイルは必須の設定項目である場合について説明する。図１９に示すように、まずスタートページ指定ＵＲＬが設定される（ステップ５２６１Ｂ）。続いて、ＯＳ設定ファイルが設定（置換処理）される（ステップ５２６３Ｂ）。続いて、アプリケーション設定ファイルの設定の要否が確認される（ステップ５２６５Ｂ）。ステップ５２６５Ｂでは、ステップ５２１Ｂおよびステップ５２３Ｂを通過したパラメータの設定状態を確認することで、アプリケーション設定ファイルの設定の要否が確認される。ステップ５２６５Ｂで、アプリケーション設定ファイルの設定が必要であることが確認されれば（ステップ５２６５Ｂの「ＯＫ」）、アプリケーション設定ファイルが設定（上書き処理）される（ステップ５２６７Ｂ）。一方、アプリケーション設定ファイルの設定が必要ではないことが確認されなければ（ステップ５２６５Ｂの「ＮＧ」）、アプリケーション設定ファイルの設定は行われずに次のステップに進む。
【０１４７】
上記のステップに続いて、プラグインファイルの設定の要否が確認される（ステップ５２８１Ｂ）。ステップ５２８１Ｂでは、ステップ５２１Ｂおよびステップ５２３Ｂを通過したパラメータの設定状態を確認することで、プラグインファイルの設定の要否が確認される。ステップ５２８１Ｂで、プラグインファイルの設定が必要であること確認されれば（ステップ５２８１Ｂの「ＯＫ」）、プラグインファイルが設定され（ステップ５２８３Ｂ）、処理が終了する。一方、プラグインファイルの設定が必要ではないことが確認されなければ（ステップ５２８１Ｂの「ＮＧ」）、プラグインファイルの設定は行われずに処理が終了する。
【０１４８】
ステップ５２９Ｂ以降の図１７の動作フローについて、ステップ５２９Ｂで生成されたプロジェクトファイルおよびステップ５３１Ｂで生成されたアプリケーションパッケージにプラグインファイルが含まれる点以外は、図７と同様なので説明を省略する。
【０１４９】
生成されたアプリケーションをユーザがダウンロードする動作フローは、図１４の動作フローと同様なので説明を省略する。ただし、アプリケーションパッケージにプラグインファイルが含まれていることに伴い、アプリケーションパッケージをダウンロードする第２通信端末３００Ｂに提供されるインターフェース６５０Ｂが図１５のインターフェース６５０とは相違する。
【０１５０】
図２０は、本発明の一実施形態に係るアプリケーション生成支援システムのパラメータ取得動作におけるインターフェースである。図２０に示すインターフェース６５０Ｂは図１５のインターフェース６５０と類似しているが、図２０のインターフェース６５０Ｂの項目名６７０Ｂでは「ＡＰＰＬＩＣＡＴＩＯＮ＿ＰＬＩＳＴ」の下に「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」が設けられている点において、図１５のインターフェース６５０とは相違する。なお、図２０の「ＰＬＵＧＩＮ＿ＦＩＬＥＳ」の設定値６８０Ｂには、図１８のインターフェース６００Ｂで入力された「Ｂｒｏｗｓｅｒ＿ｃａｍｅｒａ」が表示されている。「Ｂｒｏｗｓｅｒ＿ｃａｍｅｒａ」は、ブラウザ上でアプリケーションがインストールされた通信端末のネイティブ機能であるカメラを起動し、撮影を行うプラグインファイルである。ただし、プラグインファイルの機能は上記の機能に限定されず、他にも多様な機能を有することができる。
【０１５１】
本実施形態において、プラグインファイル用のテンプレートが第１ユーザおよび第２ユーザとは異なる第３ユーザによってアップロードされる構成について説明する。図２１は、本発明の一実施形態に係るアプリケーション生成支援システムのプラグインファイルの登録動作を示すフローチャートである。
【０１５２】
まず、第３ユーザの操作によって、第３通信端末２９０Ｂがネットワーク４００Ｂを介してアプリケーション開発支援ツール１４０ＢにＨＴＴＰ接続し（ステップ５８１Ｂ）、プラグインファイルに関連するテンプレートのアップロードを要求する（ステップ５８３Ｂ）。第３通信端末２９０Ｂによってアクセスされたアプリケーション開発支援ツール１４０Ｂは、第３通信端末２９０Ｂにプラグインファイル用ＧＵＩを提供する（ステップ５９１Ｂ）。提供されたアプリケーション設定ファイル用ＧＵＩは第３通信端末２９０Ｂの表示装置によって第３ユーザに表示される。
【０１５３】
第３通信端末２９０Ｂは、プラグインファイル用のテンプレートを準備し（ステップ５８５Ｂ）、ステップ５９１Ｂで提供されたＧＵＩを介して準備されたテンプレートをサーバ１００Ｂのアプリケーション開発支援ツール１４０Ｂにアップロードする（ステップ５８７Ｂ）。ステップ５８５Ｂで準備されたテンプレートは第３通信端末２９０Ｂを操作する第３ユーザによって作成されたものであってもよく、その他のユーザによって作成されたものであってもよい。アップロードされたテンプレートはアプリケーション開発支援ツール１４０Ｂに登録される（ステップ５９３Ｂ）。ステップ５９３Ｂで登録されたプラグインファイルに関連するテンプレートは、例えば、図１７のステップ５１１Ｂのパラメータ設定ＧＵＩで第１通信端末２００Ｂに提供される。つまり、第３実施形態において第１通信端末２００Ｂに提供されるプラグインファイル用のテンプレートは、第３ユーザまたはその他のユーザによって作成され、アプリケーション開発支援ツール１４０Ｂにアップロードされたテンプレートである。
【０１５４】
以上のように、第３実施形態にかかるアプリケーション生成支援システム１０Ｂによると、アプリケーションをインストールする第２通信端末３００Ｂに固有のネイティブ機能を実現するプラグインファイルをアプリケーションに搭載することができる。アプリケーション生成支援システム１０Ｂに準備されたプラグインファイルに関連するテンプレートは、第３通信端末２９０Ｂによってアップロードされることで増加する。したがって、第１通信端末２００Ｂは、パラメータ設定をする際に、多様なプラグインファイルに関連するテンプレートを利用することができる。
【０１５５】
〈第４実施形態〉
図２２および図２３を用いて、本発明の第４実施形態に係るアプリケーション生成支援システム１０Ｃ、ならびにアプリケーション生成支援システム１０Ｃに用いるサーバ１００Ｃ、第１通信端末２００Ｃ、および第２通信端末３００Ｃを動作させるためのプログラムについて詳細に説明する。なお、第４実施形態に係るアプリケーション生成支援システム１０Ｃのサーバ１００Ｃ、第１通信端末２００Ｃ、および第２通信端末３００Ｃの各々のハードウェア構成および機能構成について、第１実施形態に係るアプリケーション生成支援システム１０と同様のハードウェア構成および機能構成は説明を省略し、アプリケーション生成支援システム１０との相違点について説明する。
【０１５６】
［サーバ１００Ｃの機能構成］
図２２は、本発明の一実施形態に係るアプリケーション生成支援システムに用いられるサーバの機能構成を示すブロック図である。図２２に示すように、第４実施形態のサーバ１００Ｃの機能構成は、図５に示す第１実施形態のサーバ１００の機能構成に類似しているが、サーバ１００Ｃは、ビルドシェル１５０Ｃが電子証明管理部１６１Ｃを有している点において、サーバ１００とは相違する。
【０１５７】
電子証明管理部１６１Ｃは、アプリケーションパッケージ生成部１５７Ｃが生成したアプリケーションパッケージを識別する電子証明書を管理する。この電子証明書は、アプリケーションパッケージを識別するだけでなく、アプリケーションパッケージを生成するユーザが、ＯＳを提供する提供者に対して、正当性を証明するための証明書である。電子証明管理部１６１Ｃは、アプリケーションパッケージ生成部１５７Ｃによって生成されるアプリケーションパッケージに上記の電子証明書を追加する。
【０１５８】
［アプリケーション生成支援システム１０Ｃの動作フロー］
本実施形態のアプリケーション生成支援システム１０Ｃの動作フローは、第１実施形態のアプリケーション生成支援システム１０の動作フローとほぼ同じである。したがって、図７を参照してアプリケーション生成支援システム１０Ｃの動作フローについて説明する。アプリケーション生成支援システム１０Ｃの動作フローでは、ステップ５３１Ｃのアプリケーションパッケージ生成の際に、電子証明書設定の要否を確認し、必要に応じてアプリケーションパッケージに電子証明書を追加する。ここで、ステップ５３１Ｃにおいて、電子証明書をアプリケーションパッケージに追加するシーケンスについて図２３を用いて説明する。
【０１５９】
図２３は、本発明の一実施形態に係るアプリケーション生成支援システムの電子証明書をアプリケーションパッケージに追加するシーケンスを説明する図である。図２３に示すシーケンスにおいて、ステップ５２６７Ｃまでのステップは、図１２のステップ５２６７までのステップと同じなので、説明を省略する。図２３に示すように、ステップ５２６７Ｃに続いて電子証明書設定の要否が確認される（ステップ５３１１Ｃ）。ステップ５３１１Ｃで、電子証明書の設定が必要であること確認されれば（ステップ５３１１Ｃの「ＯＫ」）、電子証明書が設定（電子証明書設定がアプリケーションパッケージに追加）され（ステップ５３１３Ｃ）、処理が終了する。一方、電子証明書の設定が必要ではないことが確認されなければ（ステップ５３１１Ｃの「ＮＧ」）、電子証明書設定の設定は行われずに処理が終了する。
【０１６０】
以上のように、第４実施形態にかかるアプリケーション生成支援システム１０Ｃによると、従来アプリケーションパッケージ作成者が自ら設定する必要があった電子証明書をサーバ１００Ｃのビルドシェル１５０Ｃが自動的に生成し、ダウンロード可能に第２通信端末３００Ｃに提供することができる。
【０１６１】
なお、本発明は上記実施の形態に限られたものではなく、要旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【０１６２】
１０：アプリケーション生成支援システム、    １００：サーバ、    １０２：データベース、    １１０：サーバ制御部、    １２０：サーバ記録部、    １３０：サーバ通信部、    １４０：アプリケーション開発支援ツール、    １４１：提供部、    １４３：パラメータ受付部、    １５０：ビルドシェル、    １５１：パラメータ受信部、    １５３：パラメータチェック部、    １５５：ファイル設定部、    １５７：アプリケーションパッケージ生成部、    １５９：情報提供部、    １６１Ｃ：電子証明管理部、    ２００：第１通信端末、    ２１０：本体、    ２１１：端末記憶装置、    ２１３：端末制御装置、    ２１５：端末通信部、    ２２０：表示装置、    ２３０：入力装置、    ２９０Ａ：第３通信端末、    ３００：第２通信端末、    ３１０：端末記録部、    ３２０：端末制御部、    ３３０：端末通信部、    ３４０：ディスプレイ、    ３５０：カメラ、    ３６０：操作ボタン、    ３７０：スピーカ、    ３８０：マイク、    ４００：ネットワーク、    ６００：インターフェース、    ６１０：プロジェクト名、    ６２０：項目名、    ６３０：入力欄、    ６４０：ビルドボタン、    ６５０：インターフェース、    ６６０：プロジェクト名、    ６７０：項目名、    ６８０：設定値、    ６９０：ダウンロードボタン、    １５５１：パラメータ確認部、    １５５３：テンプレート関連付け部、    １５５５：プログラム更新部
【図１】
2019008825.tif 000003
【図２】
2019008825.tif 000004
【図３】
2019008825.tif 000005
【図４】
2019008825.tif 000006
【図５】
2019008825.tif 000007
【図６】
2019008825.tif 000008
【図７】
2019008825.tif 000009
【図８】
2019008825.tif 000010
【図９】
2019008825.tif 000011
【図１０】
2019008825.tif 000012
【図１１】
2019008825.tif 000013
【図１２】
2019008825.tif 000014
【図１３】
2019008825.tif 000015
【図１４】
2019008825.tif 000016
【図１５】
2019008825.tif 000017
【図１６】
2019008825.tif 000018
【図１７】
2019008825.tif 000019
【図１８】
2019008825.tif 000020
【図１９】
2019008825.tif 000021
【図２０】
2019008825.tif 000022
【図２１】
2019008825.tif 000023
【図２２】
2019008825.tif 000024
【図２３】
2019008825.tif 000025