Skip to main content

 

OutSystems 11オンラインヘルプ

 

モバイルアプリが対象
OutSystems

Cordovaプラグインを使用する

Apache Cordovaプラグインは、モバイルアプリで参照できるようにモジュールにラップして使用します。各プラグインを独自の専用モジュールやアプリケーションにラップする必要があります。つまり、複数のプラグインを使用する場合は、プラグインごとに1つのラッパーモジュールを含むアプリケーションを作成する必要があります。ラッパーモジュールに関連するアクションおよびエンティティは、公開する必要があります。ラッパーモジュールは、意味のある名前(「SamplePlugin」など)にする必要があります。Cordovaプラグインをラップするモジュールは、同じくCordovaプラグインをラップする別のモジュールを参照してはいけません。

Cordovaプラグインの機能は、ネイティブのモバイルアプリケーションでのみテストできます。

このドキュメントでは、既存のCordovaプラグインをモジュールにラップする方法について説明します。 独自のCordovaプラグインを作成してラップする詳しい手順については、ブログ記事「Cordovaプラグインを最初から作成する方法」をご覧ください。

Cordovaプラグインの参照

Extensibility ConfigurationモジュールプロパティでCordovaプラグインをラップします。以下のいずれかのキーをJSON設定で使用してプラグインを指定します。

  • 公開リポジトリのURL(urlキーの値)
  • Cordova識別子(identifierキーの値)
  • Data]タブのResourcesフォルダのZIPファイル(resourceキーの値)

OutSystemsでサポートされているプラ​​グインであり、かつパブリックリポジトリを使用してプラグインを参照している場合を除き、プラグインリポジトリをフォークするか、(https://example.com/sampleplugin/sam...ugin.git#1.1.0などの)タグ付きバージョンを使用することを推奨します。これにより、プラグインや、プラグインを使用するアプリケーションの変更が破棄されることを防ぎます。タグを使用しない場合、2つの異なるビルドに異なる結果が生じることがあります。ある環境でのテストが、他の環境で生成された別のビルドによって無効になる場合のある1つ以上の環境でのデプロイメントにおいて、これは特に重要です。

JSONは、プラグインに必要な追加の設定に使用できます。JSONの詳細な説明については、「Extensibility ConfigurationのJSONスキーマ」の記事をご覧ください。

JSONの例

これは、Extensibility ConfigurationモジュールプロパティのJSONファイルの例です。urlidentifier、あるいはresourceのいずれかのpluginキーのプラグイン参照のうち、使用できるのは1つのみです。ご注意ください。

npmレジストリのプラグインは以下のとおりです。

{
    "plugin" :{
        "identifier": "sampleplugin"
    }
}

gitリポジトリのプラグインは以下のとおりです。

{
    "plugin": {
        "url": "https://example.com/sampleplugin/sampleplugin.git#1.1.0"
    }
}

ZIPファイルのプラグインは以下のとおりです。

{
    "resource": "my-plugin.zip",
    "plugin": {
        "resource": "my-plugin"
    }
}

ファイルは、[Data]タブのResourcesフォルダにあるmy-plugin.zipファイルに保存されています。ResourceプロパティのDeploy Actionアトリビュートで[Do Nothing]を選択します。zipファイル内のplugin.xmlの場所はmy-plugin\plugin.xmlです。plugin.xmlファイルには、ルートplugin要素内にid="my-plugin"アトリビュートがあります。

プラグインに追加の引数が必要な場合は、これらをnameおよびvalueのキーと値のペアに指定できます。 以下に例を示します。

{
    "plugin": {
        "url": "https://example.com/sampleplugin/sampleplugin.git",
        "variables":
            [
                {
                    "name": "<plugin_var1>",
                    "value": "<value_var1>"
                },
                {
                    "name": "<plugin_var2>",
                    "value": "<value_var2>"
                }
            ]
    }
}

ラッパーモジュールのストラクチャ

各プラグインには、ブーリアン型のIsAvailable出力パラメータのあるCheck<Capability>Pluginアクション(CheckCameraPluginhなど)が必要です。これにより、プラグインがターゲットモジュールで使用可能かどうかを確認できます。

ラッパーモジュールでアクションを作成し、変数のあるJavaScriptフロー要素を追加します。アプリケーションで使用できるようにアクションを公開します。すべてのパブリックアクション、入力、および出力の説明を記述します。これは、ターゲットアプリケーションでモジュールを使用する場合に役立ちます。

以下のように、ラッパーをCordovaプラグインに接続するコードをJavaScript要素に挿入します。