ヘッダーをスキップ

Oracle Enterprise Pack for Eclipse Oracle Mobile Application Framework (OEPE Edition)でのモバイル・アプリケーションの開発 リリース2.1.2 E64870-01 |
| 目次

前 | 次 |

# 10 MAFアプリケーションでのプラグインの使用方法

この章では、MAFに用意されているコア・プラグインを有効にしてMAFアプリケーションで使用する方法、追加プラグインを登録する方法、FARからプラグインをインポートする方法、MAFアプリケーションのプラグインをパッケージ化してデプロイする方法、およびプラグインをチーム作業環境で使用する方法について説明します。

この章の内容は次のとおりです。

- 第10.1項「MAFアプリケーションでのプラグイン統合の概要」

- 第10.2項「MAFアプリケーションでのコア・プラグインの有効化」

- 第10.3項「MAFアプリケーションでの追加プラグインの登録」

- 第10.4項「Cordovaレジストリからのプラグインの使用」

- 第10.5項「チーム環境での外部プラグインの使用」

- 第10.6項「MAFアプリケーションでのプラグインの使用」

- 第10.7項「MAFアプリケーション組込みプラグインのデプロイ」

- 第10.8項「FARからのプラグインのインポート」

## 10.1 MAFアプリケーションでのプラグイン統合の概要

MAFには様々なCordovaプラグインがパッケージ化されているので、MAFアプリケーションはこのプラグインを使用してデプロイ先のデバイスと対話できます。MAFに用意されているデフォルトのプラグインはコア・プラグインと呼ばれます。これらのプラグインは、図10-1に示すとおり、MAFアプリケーション・エディタで確認できます。たとえば、MAFアプリケーションでデバイスの電子メール機能やコンタクト先機能へのアクセスに使用する電子メールプラグインやコンタクト先プラグインなどがあります。

MAFには、プラグインを使用するMAFアプリケーション用に、次のバージョンのApache Cordovaが含まれています。

- AndroidプラットフォームのMAFアプリケーション用Apache Cordova 3.6.3

- iOSプラットフォームのMAFアプリケーション用Apache Cordova 3.7.0

各プラグインの説明を表示するには、「コア・プラグイン」リスト(図10-1を参照)でプラグインを選択します。新規作成したMAFアプリケーションでは、1つのコア・プラグイン(ネットワーク情報プラグイン)のみがデフォルトで有効になっています。第10.2項「MAFアプリケーションでのコア・プラグインの有効化」の説明に従って、これらのコア・プラグインを有効にします。

注意: iOSデバイス上のすべてのアプリケーションにネットワーク・アクセスがデフォルトで許可されます。この動作は変更できません。Androidデバイスにデプロイするアプリケーションについては、Androidデバイス上でネットワーク・アクセスを許可しない場合、ネットワーク情報プラグインを無効にします。

MAFに用意されているデフォルトのコア・プラグインではMAFアプリケーションの要件を満たさない場合は、独自に開発した追加プラグインを登録できます。詳細は、第10.3項「MAFアプリケーションでの追加プラグインの登録」を参照してください。

CordovaレジストリからCordovaプラグインを登録できます。詳細は、第10.3項「MAFアプリケーションでの追加プラグインの登録」を参照してください。

Cordova対応の共有プロジェクトを使用して、チーム環境でプラグインを利用できます。詳細は、第10.5項「チーム環境での外部プラグインの使用」を参照してください。

追加プラグインを登録するとMAFアプリケーションがデプロイできなくなる場合、MAFアプリケーションで使用されているプラグイン間でファイル名が競合している可能性があります。詳細は、第10.7項「MAFアプリケーション組込みプラグインのデプロイ」を参照してください。

以前のリリースのMAFで作成したMAFアプリケーションを移行する場合は、アプリケーションで使用されているすべてのプラグインをMAFアプリケーション・エディタに登録する必要があります。詳細は、Oracle Enterprise Pack Oracle Enterprise Pack for Eclipseのインストールの以前のリリースからのプラグインの移行に関する項を参照してください。

`BarcodeDemo`サンプル・アプリケーション(付録G「サンプルのMAFアプリケーション」を参照)には、外部プラグインを含め、プラグインの使用例が用意されています。

図10-1 MAFアプリケーション・エディタのプラグイン

## 10.2 MAFアプリケーションでのコア・プラグインの有効化

新規作成したMAFアプリケーションでは、1つのコア・プラグイン(ネットワーク情報プラグイン)のみがデフォルトで有効になっています。他のコア・プラグインを有効または無効にして、関連するデバイスの機能にMAFアプリケーションがアクセスできるようにしてください。

有効化されたプラグインのみがデプロイされるため、デプロイ済アプリケーションのサイズは最小限に維持されます。

### 10.2.1 MAFアプリケーションでコア・プラグインを有効にする方法

MAFアプリケーション・エディタを使用してコア・プラグインを有効にします。

MAFアプリケーションでコア・プラグインを有効にする手順:

1. プロジェクト・エクスプローラで、アセンブリ・プロジェクト・フォルダを展開し、次にMAFを展開し、「MAFアプリケーション・エディタ」をダブルクリックします。

2. 「アウトライン」の下のエディタで、「コア・プラグイン」を展開してプラグイン有効化を選択します。アプリケーションに対してすでに有効化されているプラグインがリストされます。

3. をクリックしてモバイル・プラグイン選択ダイアログを開き、使用するコア・プラグインを選択します。「OK」をクリックします。

   たとえば、MAFアプリケーションでSMSメッセージを送信できるようにするには、SMSプラグインを選択します。

4. MAFアプリケーション・エディタのプラグイン有効化領域でコア・プラグインが選択された状態で、そのプラグインをAndroidまたはiOS (あるいはその両方)で使用できるように選択します。変更を保存します。

   メモを追加することもできます(プラグインは有効になっているがそれに関連付けられた機能がないなど)。

### 10.2.2 MAFアプリケーションでコア・プラグインを有効にする場合の処理

MAFアプリケーション・エディタでコア・プラグインを有効にすると、そのプラグインがエディタのプラグイン有効化にリストされます。プラグイン有効化領域の「使用を宣言している登録された機能」で、選択されたプラグインを使用しているアプリケーションの機能を確認できます。

プラグインは、各機能とともに使用可能で、MAF機能エディタのプラグイン使用にリストされます。

## 10.3 MAFアプリケーションでの追加プラグインの登録

MAFに用意されたコア・プラグインでは提供されていない機能がMAFアプリケーションで必要な場合は、MAFアプリケーションに追加プラグインを登録します。追加プラグインにはファイルの場所またはワークスペースを基準とする場所からアクセスするため、外部プラグインとして外部ファイルを使用できます(ZIPファイルやワークスペースを基準とする場所など)。

追加プラグインを登録したら、そのプラグインを使用可能にしてMAFアプリケーションにデプロイできます。これがサード・パーティ・プラグインをアプリケーションで使用する最初の手順です。

### 10.3.1 追加プラグインを登録する方法

MAFアプリケーション・エディタを使用して、MAFアプリケーションで使用する追加プラグインを登録します。

アクセス可能なファイルの場所(ダウンロード済のZIPなど)に格納されているプラグインを使用することも、ワークスペースを基準として外部プラグインを参照している場所を入力することもできます。

MAFアプリケーションに外部プラグインを登録する手順:

1. プロジェクト・エクスプローラで、アセンブリ・プロジェクト・フォルダを展開し、次にMAFを展開し、「MAFアプリケーション・エディタ」をダブルクリックします。

2. 「アウトライン」の下のエディタで、「外部プラグイン」を右クリックして「新」→外部Cordovaプラグインを選択します。

3. 「URI」にプラグインの場所を入力します。をクリックしてモバイル・プラグインの場所ダイアログを開きます。Eclipseワークスペース・コンテナを入力するか、プラグインを含む外部フォルダに移動します。

4. URIのコンテンツが変更されている場合にプラグインを再検査して情報を更新するには、をクリックします。これにより、現在のプラグインのメタデータから使用可能な情報が取得されます。次のものが含まれます。

   - ID

   - 名前

   - 説明

   - バージョン

   - プラットフォームのサポート。これは、必要に応じてプラットフォームの可用性をオーバーライドするように編集できます。

   - メモ。アプリケーションに登録した履歴を確認しやすくするなど、様々な目的で情報を追加できます。

### 10.3.2 MAFアプリケーションに外部プラグインを登録する場合の処理

MAFアプリケーション・エディタで外部プラグインを有効にすると、そのプラグインがエディタのプラグイン有効化にリストされます。プラグイン有効化領域の「使用を宣言している登録された機能」で、選択されたプラグインを使用しているアプリケーションの機能を確認できます。

プラグインは、各機能とともに使用可能で、MAF機能エディタのプラグイン使用にリストされます。

図10-2 MAFアプリケーション・エディタの追加プラグイン

## 10.4 Cordovaレジストリからのプラグインの使用

CordovaレジストリからCordovaプラグインを使用できるようにするApache Cordovaプロジェクトを作成できます。

次のようにいくつかの手順があります。

1. チームで共有できる場所に、Apache Cordova用に構成されたプロジェクトを作成します。

2. リポジトリからプラグインを追加します。

3. MAFアプリケーションのアセンブリ・プロジェクトに共有プロジェクトを追加します。

4. MAFアプリケーション・エディタで共有プロジェクトに外部プラグインを追加します。

### 10.4.1 Cordovaレジストリからプラグインを使用する方法

始める前に、レジストリ(場所は`http://plugins.cordova.io`)から使用するプラグインのプラグインIDまたはリポジトリURIを取得してください。たとえば、Cordova Geolocationプラグインの場合、プラグインIDは`org.apache.cordova.geolocation`で、リポジトリURIは`https://git-wip-us.apache.org/repos/asf/cordova-plugin-geolocation.git`です。

また、Apache Cordovaのプロジェクトを構成するため、Cordova CLIをインストールしてパス上に配置する必要があります。詳細は、`http://cordova.apache.org`を参照してください。

プラグイン用に共有プロジェクトを設定する手順:

1. プラグイン用に新しいCordovaプロジェクトを作成します。プロジェクト・エクスプローラでいずれかのプロジェクトを右クリックし、「新」→Apache Cordovaプロジェクトを選択します。これにより、プロジェクト・エクスプローラにファイルとフォルダの空のセットが作成されます。

2. 新規Apache Cordovaプロジェクト・ダイアログで、プロジェクトの名前を入力し、適切な場所を指定します。「終了」をクリックします。

3. プロジェクト・エクスプローラで、新しいプロジェクトを右クリックし、Cordova→レジストリからのプラグインの追加を選択します。

4. Cordovaプラグインの追加ダイアログ(図10-3を参照)で、プラグインを指定します。

   図10-3 レジストリからのプラグインの使用

   次のいずれかを使用できます。

   - Apache CordovaレジストリにあるプラグインのプラグインID。

   - プラグインのリポジトリURI。

   Cordovaプラグインの追加ダイアログには、外部ブラウザでレジストリを開くためのリンクがあります。プラグインを検索したり、プラグインIDまたはリポジトリURIをコピーできます。

   「実行」をクリックします。ダイアログに結果がリストされます。成功したら、「閉じる」をクリックします。

5. MAFアプリケーションでプラグインを使用するには、プロジェクト・エクスプローラでアセンブリ・プロジェクトを右クリックし、「プロパティ」を選択します。

6. 「プロパティ」ダイアログで、`「モバイル・アプリケーション・フレームワーク」`を選択し、「プロジェクト」タブを選択します。Apache Cordovaプロジェクトをプロジェクトのリストに追加します。「OK」をクリックします。

   Eclipseワークスペース・コンテナ・オプションを使用して外部プラグインを登録した場合、この手順は自動的に実行されます。

7. MAFアプリケーションのアセンブリ・プロジェクトで、「外部プラグイン」を右クリックし、「新」→外部Cordovaプラグインを選択します。Apache Cordovaプロジェクトに移動して、MAFアプリケーションで有効化するプラグインを選択します。

### 10.4.2 Cordovaレジストリからプラグインを使用する場合の処理

MAFアプリケーション・エディタでレジストリからのプラグインを有効にすると、そのプラグインがエディタのプラグイン有効化にリストされます。プラグイン有効化領域の「使用を宣言している登録された機能」で、選択されたプラグインを使用しているアプリケーションの機能を確認できます。

プラグインは、各機能とともに使用可能で、MAF機能エディタのプラグイン使用にリストされます。

## 10.5 チーム環境での外部プラグインの使用

チーム環境で作業しており、共有の場所からApache Cordovaレジストリの外部プラグインにアクセスする場合、使用しているワークステーションの構成方法に応じて、すべてのユーザーが使用できるApache Cordovaプロジェクトからそれを実行します。

これによって、チーム環境で役割分離が可能となり、ある開発者は共有フォルダを使用してアプリケーションで有効なプラグインを指定する作業をしながら、別の開発者は第10.6項「MAFアプリケーションでのプラグインの使用」の説明に従って機能の開発に従事できます。

### 10.5.1 チーム環境で外部プラグインを使用する方法

第10.4.1項「Cordovaレジストリからプラグインを使用する方法」の指示に従います。プロジェクトは、すべてのユーザーが使用できるように、ソース・コントロールにある共有の場所に作成できます。

## 10.6 MAFアプリケーションでのプラグインの使用

MAFアプリケーションのプラグインは、MAF機能エディタを使用してアプリケーション機能に関連付けることで使用します(図10-4を参照)。その後、MAFアプリケーション・エディタでプラグインがアプリケーションに対して有効になっていることを確認します。

図10-4 機能でのプラグインの使用

### 10.6.1 登録された機能のプラグインを指定する方法

MAF機能エディタを使用してプラグインを機能に関連付けます。

MAF機能エディタでのプラグイン使用は、様々なユーザーがアプリケーションで有効なプラグインを指定し、機能でプラグインを使用するチーム環境で役立ちます。

機能で使用するプラグインを指定する手順:

1. プロジェクト・エクスプローラで、ビュー・プロジェクト・フォルダを展開し、次にMAFを展開し、「MAF機能エディタ」をダブルクリックします。

2. 「アウトライン」の下のエディタで、プラグインを使用する機能を選択し、プラグイン使用を選択します。

3. ページのプラグイン使用領域で、をクリックしてモバイル・プラグイン選択ダイアログを開きます。

4. アプリケーションに登録されているプラグインのリストから、適切なものを選択して「OK」をクリックします。

5. プラグインのプラットフォームとして使用できるAndroidまたはiOS (あるいはその両方)を選択します。登録されたプラグインで特定のプラットフォームが禁止されている場合、それを選択することはできません。変更を保存します。

6. MAFアプリケーション・エディタに戻ります。プロジェクト・エクスプローラで、アセンブリ・プロジェクト・フォルダを展開し、次にMAFを展開し、「MAFアプリケーション・エディタ」をダブルクリックします。

7. 「アウトライン」の下のエディタで、プラグイン有効化を選択してをクリックします。これにより、登録された機能によって使用することが宣言されているすべてのプラグインが、アプリケーションで有効になります。

## 10.7 MAFアプリケーション組込みプラグインのデプロイ

MAFアプリケーション組込みプラグインのデプロイメントは、選択したデプロイメント方法によって異なります。

FARへのデプロイメント

FARへのデプロイメントには、`jar-maf-plugins.xml`というアプリケーションのプラグイン情報のコピーが含まれます。これにより、OEPEとJDeveloper間の移植が可能になります。

モバイル・アプリケーション・アーカイブ・ファイルへのデプロイメント

モバイル・アプリケーション・アーカイブ・ファイルへのデプロイメントには、すべての`path`属性が空の文字列に設定された`oepe-maf-plugins.xml`ファイルから生成されたアプリケーションの`maf-plugins.xml`ファイルのコピーが含まれます。

AndroidまたはiOSデプロイメント・プロファイルを使用したデプロイメント

AndroidまたはiOSデプロイメント・プロファイルを使用してデプロイする場合は、OEPEが`maf-helper`コマンドライン・ツールを起動して、構成済プラグインをデプロイします。`maf-helper`コマンドライン・ツールでは、プラグイン・アーティファクトがそれぞれのソースの場所からAndroidまたはiOSのデプロイメント・フォルダにデプロイされます。コマンドライン・ツールでプラグインがデプロイされると、デプロイメントではそのプラグインをプラットフォーム固有のアプリケーションに組み込みます。

## 10.8 FARからのプラグインのインポート

FARをインポートする場合、どのプラグインをインポートし、どのプラグインを無視するかを選択できます。この方法で、インポートしたプラグインを、使用するアプリケーションのプラグインのリストにマージできます。詳細は、第9.1項「機能アーカイブ・ファイルの使用」を参照してください。

### 10.8.1 FARからプラグインをインポートする方法

これはMAF機能エディタで実行します。

FARからプラグインをインポートする手順:

1. MAF機能エディタで、第9.1.1項「アプリケーション・ライブラリとしてのFARのインポート」の説明に従ってFARをインポートします。

2. インポートしたFARのノードを展開して「プラグイン」を選択すると、アーカイブで宣言されているプラグインが図10-5のようにリストされます。

   図10-5 インポートしたFARのプラグイン

   外部プラグインは次の3つのノードの下にリストされます。

   - 新: これらは、FARで定義されているが、使用するアプリケーションで等価性がないプラグインです。

   - 等価: 等価プラグインは、プラグインIDがアプリケーションにすでに登録されているものと一致するプラグインです。特定のランタイム用のコア・プラグインは、常に等価になります。

   - 無視: これらは、無視するように選択されているプラグインです。

   次の2つの条件が両方とも満たされると、FARプラグインに検証エラーが表示されます。

   - アプリケーションで1つ以上のFAR機能が使用されています。

   - すべてのプラグインが等価でも無視でもありません。

3. プラグインを無視するには、それを選択してをクリックします。これでプラグインはアプリケーションで使用できなくなります。

   使用中のFAR機能が無視されたプラグインに依存している場合、通常、アプリケーションは実行時に失敗します。

4. 新しいプラグインをインポートするには、をクリックします。これにより、Cordovaプラグインの選択ダイアログが開き、プラグインのソースURIを参照できます。有効ではない可能性のあるプラグインを選択すると(Cordovaのバージョンが予期されたバージョンより古い場合など)、続行するかどうかを決定できるようにOEPEによって警告が出力されます。

   これで、アプリケーションでプラグインを使用できるようになります(第10.3項「MAFアプリケーションでの追加プラグインの登録」を参照)。