ヘッダーをスキップ

Oracle® Mobile Application Framework Oracle Mobile Application Frameworkでのモバイル・アプリケーションの開発 2.1.1.0.0 E64867-01 |
| 目次

前 | 次 |

# 27 MAFアプリケーションのデプロイ

この章では、テストと公開のためのMAFアプリケーションのデプロイ方法について説明します。

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

- 第27.1項「MAFアプリケーションのデプロイメントの概要」

- 第27.2項「デプロイメント・プロファイルでの作業」

- 第27.3項「Androidアプリケーションのデプロイ」

- 第27.4項「iOSアプリケーションのデプロイ」

- 第27.5項「機能アーカイブ・ファイル(FAR)のデプロイ」

- 第27.6項「モバイル・アプリケーション・アーカイブ・ファイルの作成」

- 第27.7項「署名されていないデプロイメント・パッケージの作成」

- 第27.8項「コマンド行からのMAFアプリケーションのデプロイ」

- 第27.9項「Oracle Mobile Security Suiteでのデプロイ」

## 27.1 MAFアプリケーションのデプロイメントの概要

エンド・ユーザーに配布するためにアプリケーションを公開する前に、シミュレータまたは実際のデバイスでこれをテストして、その動作と使いやすさを評価する必要があります。MAFでは、iOSアプリケーション・バンドル(`.ipa`または`.app`ファイル)またはAndroidアプリケーション・パッケージ(`.apk`)・ファイルをプラットフォームに適したデバイスまたはシミュレータにデプロイすることで、App Store (Apple iTunes)またはアプリケーション・マーケットプレイス(Google Playなど)に公開する前にアプリケーションをテストできます。

### 27.1.1 MAFデプロイメント・オプション

MAFでは、プロジェクトをデプロイする場合、プラットフォーム固有のテンプレート・アプリケーションを一時的な場所にコピーした後、MAFプロジェクト内で定義されたコード、リソースおよび構成を使用して、そのアプリケーションを更新します。その後、MAFでは、ターゲット・プラットフォームのツールを使用して、アプリケーションをビルドおよびデプロイします。ダウンロード・サイトまたはアプリケーション・マーケットプレイス(Apple App StoreやGoogle Playなど)から入手可能なプラットフォーム固有のパッケージ(.ipa、Androidの場合は.h)として、モバイル・アプリケーションをデプロイできます。テストおよびデバッグの目的で、シミュレータまたはデバイスにデプロイできます。ビュー・コントローラ・プロジェクトを機能アーカイブ(FAR)としてデプロイすることで、アプリケーション機能を再利用できます。また、モバイル・アプリケーション・アーカイブ(`.maa`)ファイルとしてデプロイすることで、モバイル・アプリケーション全体を再利用することもできます。

#### 27.1.1.1 プロジェクト・ライブラリのデプロイメント

「ライブラリとクラスパス」ダイアログ(図27-1を参照)を使用してプロジェクトに宣言するライブラリは、そのプロジェクトのデプロイメント・アーティファクトに含まれます。このダイアログにより、アプリケーション機能は実行時にこれらのライブラリにアクセスすることが可能になります。

図27-1 プロジェクトへのライブラリの追加

#### 27.1.1.2 JVMライブラリのデプロイメント

AndroidアプリケーションとiOSアプリケーションのどちらの場合も、それぞれのMAFデプロイメントには、デプロイメントのタイプ(リリースまたはデバッグ)とデプロイメント・ターゲット(シミュレータまたは実際のデバイス)の組合せに固有の異なるライブラリのセットが含まれています。さらに、それぞれのライブラリ・セットには、JVMのJARファイルが含まれます。アプリケーションのバインディング・レイヤーは、Objective-Cライブラリのコレクションであるこの仮想マシン内にあります。たとえば、MAFは、iOSシミュレータをターゲットとするデバッグ・デプロイメントに対して、JVM JARファイルと一連のライブラリをデプロイしますが、実際のiOSデバイスをターゲットとするデバッグ・デプロイメントに対しては、異なるJVM JARファイルと一連のライブラリをデプロイします。

## 27.2 デプロイメント・プロファイルでの作業

デプロイメントのためにモバイル・アプリケーションを準備する際は、最初に、プラットフォーム固有のデプロイメント・プロファイルを作成します。デプロイメント・プロファイルでは、iOSデバイス、Androidデバイス、iOSシミュレータまたはAndroidエミュレータにデプロイするアプリケーションをアーカイブにパッケージ化する方法を定義します。デプロイメント・プロファイルは次を行います。

- アーカイブの形式と内容を指定します。iOSのアーカイブ形式は、アプリケーション・バンドルとして知られている`.ipa`ファイルになります。Androidのアーカイブ形式は、Androidアプリケーション・パッケージ(`.apk`)・ファイルになります。

  注意: `.apk`ファイルはアーカイブ互換です。つまり、WinZipまたは7-Zipのようなアーカイブ・ツールを使用して、その内容を表示できます。

- アーカイブ・ファイルへのパッケージ対象となるソース・ファイル、デプロイメント・ディスクリプタおよびその他の補助ファイルをリストします。

- 作成されるアーカイブ・ファイルのタイプおよび名前を記述します。

- 依存情報、プラットフォーム固有の指示およびその他の情報を示します。

### 27.2.1 自動的に生成されるデプロイメント・プロファイルについて

アプリケーションを作成すると、MAFによって、デフォルトの設定とイメージ・ファイルでシードされたデプロイメント・プロファイルが生成されます。環境を正しく構成した場合、これらのプロファイルを使用して、MAFアプリケーションを作成直後にデプロイできます。これを行うには、図27-2に示すように、「アプリケーション」を選択した後、「デプロイ」を選択します。

図27-2 デフォルトのデプロイメント・プロファイル

その後、「デプロイメント・アクション」ページ(図27-3を参照)を使用し、適切なデプロイメント・ターゲットを選択します。

図27-3 デプロイメント・ターゲットの選択

注意: iOSおよびAndroidアプリケーションをデプロイする場合、それらの環境設定と構成に関する要件はそれぞれ異なります。詳細は、第27.3項「Androidアプリケーションのデプロイ」および第27.4項「iOSアプリケーションのデプロイ」を参照してください。

図27-2に示すように、MAFでは、サポートされる両方のプラットフォーム(iOSとAndroid)に対応したアプリケーション・レベルのプロファイルが作成され、それらにiOS1およびAndroid1という名前が付けられます。

注意: MAFでは、新しいデプロイメント・プロファイルが作成されるたびに、その名前に付加される数字が1ずつ増加します。たとえば、iOS2、iOS3のようになります。

これらのプロファイルには、デフォルト値をそのまま使用するか、「アプリケーションのプロパティ」ダイアログの「デプロイメント」ページでプロファイルの名前を選択し、「編集」をクリックすることによって、それらの値を編集することもできます。図27-4は、デフォルトのAndroidアプリケーション・プロファイルの「オプション」ページを示しています。MAFアプリケーション・プロファイル用に構成する値の詳細は、第27.2.4項「Androidデプロイメント・プロファイルの作成方法」および第27.2.5項「iOSデプロイメント・プロファイルの作成方法」を参照してください。

図27-4 デフォルトのデプロイメント・プロファイルの編集

MAFでは、アプリケーション・コントローラ・プロジェクトとビュー・コントローラ・プロジェクトは、別々の機能アーカイブ(FAR)ファイルとしてパッケージ化されます。このようなMAFファイルのJARファイルは、他のアプリケーションのリソースとして使用されます(第27.5項「機能アーカイブ・ファイル(FAR)のデプロイ」を参照)。MAFでは、これらのFARファイルがMAFアプリケーション・プロファイルへの依存性として作成されるため、「アプリケーションのプロパティ」ダイアログの「プロファイルの依存性」ページを使用して、これらのファイルを追加または除外できます(図27-5を参照)。

注意: アプリケーション・コントローラ・プロジェクトに含まれるFARプロファイルの依存性は1つである必要があります。そうでない場合、デプロイメントは失敗します。

図27-5 MAFプロジェクトからのFARコンテンツの編集

「プロジェクト・プロパティ」ダイアログのファイル・グループに関連するページを使用すると、ビュー・コントローラのFARファイルに含まれるコンテンツをカスタマイズできます(図27-6を参照)。「プロジェクト・プロパティ」ダイアログの詳細は、Oracle JDeveloperのオンライン・ヘルプと、『Oracle Fusion Middleware Oracle JDeveloperユーザーズ・ガイド』のデプロイメント・プロファイルの構成に関する項を参照してください。

図27-6 ビュー・コントローラ・プロジェクトのFARの編集

MAFでは、プラットフォーム固有のデプロイメント・プロファイルに加えて、MAFアプリケーションをMAFアプリケーション・アーカイブ(`.maa`)・ファイルとしてパッケージ化するために使用できるデプロイメント・プロファイルも作成されます。このファイルを使用すると、`.maa`ファイルとしてパッケージ化された既存のアプリケーションを使用する新しいMAFアプリケーションを作成できます。詳細は、第27.6項「モバイル・アプリケーション・アーカイブ・ファイルの作成」および第27.7項「署名のないデプロイメント・パッケージの作成」を参照してください。

このデプロイメント・ファイルには、MAFアプリケーション名に_archiveが続く形式の名前がデフォルトで付けられます。図27-2に示すように、このプロファイルはEmployees_archiveと呼ばれ、必要に応じ、「アプリケーションのプロパティ」ダイアログを使用して編集できます。

図27-7 「アプリケーションのプロパティ」ダイアログを使用したデフォルトのデプロイメント・プロファイルの編集

「アプリケーション・プロパティ」ダイアログのページを使用したデプロイメント・プロファイルの編集の詳細は、『Oracle Fusion Middleware Oracle JDeveloperユーザーズ・ガイド』のデプロイメント・プロファイル・プロパティの表示および変更に関する項と、Oracle JDeveloperオンライン・ヘルプの「アプリケーション・プロパティ」および「プロジェクト・プロパティ」ダイアログに関する説明を参照してください。

### 27.2.2 デプロイメント・プロファイルの作成方法

第27.2.1項「自動的に生成されたデプロイメント・プロファイルについて」に記載されているとおり、MAFでは、モバイル・アプリケーションが作成されたときに、デプロイメント・プロファイルのセットを作成します。これらのプロファイルを使用してアプリケーションをデプロイしたり、それらのプロファイルを編集したり、MAF固有のデプロイメント・プロファイル・ページを使用して新しいプロファイルを構成できます。デプロイメント・プロファイルの作成ウィザード(図27-8を参照)を使用して、それらのページからデフォルトのデプロイメント・プロファイルを作成できます。デプロイメント・プロファイルは、必要な数だけ作成できます。これらの標準デプロイメント・プロファイル・ページの詳細は、「ヘルプ」をクリックしてJDeveloperオンライン・ヘルプを参照してください。

注意: MAFアプリケーションのデプロイメントでは、アプリケーションレベルのデプロイメント・プロファイルの作成のみが必要とされるので、ビュー・コントローラレベルのデプロイメント・プロファイルを作成する必要はありません。

始める前に

JDeveloperでモバイル・アプリケーションをデプロイできるようにするには、『Oracle Mobile Application Frameworkのインストール』のプラットフォームとフォーム・ファクタに応じた開発環境の構成に関する項の説明に従って、ターゲット・プラットフォーム用のSDKを指定する必要があります。

ヒント: iOSデプロイメントの場合は、iTunesおよびiOSシミュレータを1回以上実行してから、それらのディレクトリの場所を構成します。

デプロイメント・プロファイルを作成する手順は、次のとおりです。

1. 「アプリケーション」→「デプロイ」を選択します。

2. 「新規デプロイメント・プロファイル」を選択します。

3. ターゲット・プラットフォームに応じて、「Android用MAF」、「iOS用MAF」または「MAFアプリケーション・アーカイブ」を選択します(図27-8を参照)。

4. プロファイルのデフォルト名をそのまま使用するか、新しい名前を入力します。「OK」をクリックします。

5. 必要な場合は、「オプション」ページと「アプリケーション・イメージ」ページを適宜使用して、「OK」をクリックします。

   図27-8 「デプロイメント・プロファイルの作成」ウィザード

### 27.2.3 デプロイメント・プロファイルの作成時の処理

ウィザードが完了すると、JDeveloperによってデプロイメント・プロファイルが作成され、デプロイメント・プロファイルのプロパティ・エディタが開きます。

表27-1に、デプロイメント・プロファイルのプロパティ・エディタのMAFに固有のページ(図27-10を参照)をリストします。

表27-1 MAF固有のデプロイメント・プロファイル・ページ

ページ | 機能
--- | ---
iOSオプション | iOSデバイスまたはiOSシミュレータにデプロイされるアプリケーションの設定を変更できます。
Androidオプション | AndroidデバイスまたはAndroidエミュレータにデプロイされるアプリケーションの設定を変更できます。
アプリケーション・イメージ | 適切なグラフィックス・ファイルを追加することで、アプリケーションにカスタム・アイコンを割り当てられます。
デバイスの向き | アプリケーションの表示をデバイスの特定の向きに制限できます。このページはiOSデプロイメント・プロファイルのみに使用されます。

注意: デプロイメントはアプリケーションのニーズによって異なります。表27-1にリストされたページにシードされたデフォルト値を使用してアプリケーションをデプロイできます。

アプリケーションをデプロイすると、JDeveloperによってデプロイメント・ディレクトリと関連するサブディレクトリが作成されます。さらに、ビュー・コントローラ・プロジェクト(異なる名前が付いている必要があります)とアプリケーション・コントローラ・プロジェクトの両方の機能アーカイブ・ファイル(FAR)が作成されます。これら2つのFARに加え、プロジェクトにインポートされたすべてのFARのコピーがJDeveloperによって作成されます。コンパイル・プロファイルを変更する際は、デプロイメント・ディレクトリを削除する必要があります。「ビルド」→「すべてクリーン」を選択することで、このディレクトリに加え、FARを含むビュー・コントローラ・プロジェクト内のデプロイメント・ディレクトリを削除できます。

### 27.2.4 Androidデプロイメント・プロファイルの作成方法

デプロイメント・プロファイルによって、Androidデバイスまたはエミュレータへのアプリケーション・デプロイメントのためのテンプレートまたはAndroidアプリケーション・パッケージ(`.apk`)・ファイルとしてアプリケーションを作成するためのテンプレートが作成されます。

Androidのデプロイメント・プロファイルを作成するには、アプリケーションの署名オプションと`javac`コンパイラの動作を定義し、必要な場合はアプリケーション・アイコンに使用されるデフォルトOracleイメージをカスタム・イメージでオーバーライドします。

始める前に

『Oracle Mobile Application Frameworkのインストール』のAndroid SDKのインストール方法に関する項の説明に従って、Android SDKをダウンロードしてインストールします。

Androidエミュレータにデプロイする場合は、Android開発者のWebサイト(`http://developer.android.com/tools/devices/index.html`)で入手可能な「Managing Virtual Devices」の説明に従い、Android Virtual Device Managerを使用して各エミュレータ・インスタンスの仮想デバイスを作成する必要があります。

また、AndroidプラットフォームSDKのMAFのプリファレンス(「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」→「Android」プラットフォームを選択してアクセス)を、Android SDKパッケージのダウンロードの一部であるSDK、プラットフォームおよびビルド・ツールの場所に設定する必要があります。図27-9には、これらの場所が示されています。

注意: デプロイメントを有効にするには、「Androidビルド・ツール・ロケーション」フィールドがビルド・ツールの場所、`aapt`ファイル(Windowsシステム上の`appt.exe`)を参照している必要があります。 MAFは、開発コンピュータにインストールされている最新バージョンの`build-tools`ディレクトリを「Androidビルド・ツール・ロケーション」フィールドに入力します。

注意: プッシュ通知には、Android 4.0.3 (API 15)プラットフォーム(またはそれ以降)を実行しているデバイスとエミュレータが必要です。エミュレータ上でプッシュ通知を有効にするには、Google Playストアがこれらのデバイスにインストールされ、Google APIがSDKにインストールされている必要があります。ユーザーはGoogleアカウントを作成(およびログイン)している必要があります。 Android開発者のWebサイト(`http://developer.android.com/index.html`)で入手可能な『Google Cloud Messaging for Android』の「GCM Architectural Overview」も参照してください。

図27-9 Android SDK、プラットフォームおよび署名プロパティの設定

「Androidプラットフォーム」ページを使用して、AndroidプラットフォームにデプロイするMAFアプリケーションの署名に使用されるキーのデバッグおよびリリース・プロパティも定義します。続いて、デプロイメント・プロファイル内で、モバイル・アプリケーションのリリース・タイプをデバッグまたはリリースに指定します。署名キー・プロパティは一度定義するのみでかまいません。詳細は、第27.2.4.3項「Android署名オプションの定義」を参照してください。また、Android開発者のWebサイト(`http://developer.android.com/tools/publishing/app-signing.html`)で入手可能な「Signing Your Applications」で、アプリケーションの公開に関する情報も参照してください。

#### 27.2.4.1 アプリケーションの詳細オプションの設定

「Androidオプション」ページ(図27-10を参照)では、次を行うことができます。

- アプリケーションのバージョンを示します。詳細は、Android開発者のWebサイト(`http://developer.android.com/tools/publishing/versioning.html`)で入手可能な「Versioning Your Applications」を参照してください。

- `.apk`ファイルのパッケージングを最適化するアーカイブ位置合せツールであるAndroid zipalignツールを構成します。データ・マニフェストなど、各アプリケーション・パッケージに格納されるデータ・ファイルは、Androidオペレーティング環境内の複数プロセスによって絶えずアクセスされます。詳細は、Android開発者のWebサイト(`http://developer.android.com/tools/help/zipalign.html`)で入手可能な「zipalign」を参照してください。

- ロギング・レベル出力を非詳細またはデバッグ(詳細)に設定します。

- デプロイメント・ターゲットに適した署名オプションを設定します(エミュレータまたはデバイス)。詳細は、第27.2.4.3項「Android署名オプションの定義」を参照してください。

図27-10 デプロイメント・プロファイルのプロパティ・エディタ(「Androidオプション」ページ)

アプリケーション・オプションを設定するには:

1. 「Androidオプション」(図27-10を参照)を選択します。

2. デフォルト値をそのまま使用するか、次のオプションを定義します。

   - アプリケーション・バンドルID: `maf-application.xml`ファイルの`id`属性で設定されるアプリケーションの一意のID。Androidデバイスにデプロイされる各アプリケーションには、一意のIDがあります。このIDを数字から始めることはできません。詳細は、第3.3項「アプリケーション機能の表示プロパティの設定」を参照してください。

     必要な場合は、デプロイメント・ファイルでこの値をオーバーライドできます。ただし、アプリケーションをデプロイするには、この名前がAndroidマニフェスト・ファイルの`<manifest>`要素に含まれる`package`属性に従っている必要があります。この要素については、Android開発者のWebサイト(`http://developer.android.com/guide/topics/manifest/manifest-intro.html`)で入手可能な「The AndroidManifest.xml File」を参照してください。具体的には、IDには、インターネット・ドメイン(com.company.application)のリバースパッケージ書式を使用します。ネーミングの競合を避けるために、パッケージ名にはドメインの所有者が反映されます(例: com.oracle.application)。

     注意: アプリケーション・バンドルIDに空白を含めることはできません。

   - アプリケーション・アーカイブ名: 必要に応じて、MAFによって作成された`.apk`ファイルの名前を入力します。または、デフォルトの名前を使用します。

     MAFのデフォルトでは、`.apk`ファイルの名前は、`maf-application.xml`ファイルで構成されているアプリケーションの`id`属性に基づいて付けられます。詳細は、第3.3項「アプリケーション機能の表示プロパティの設定」を参照してください。

   - バージョン名: ユーザーに表示されるアプリケーション・コードのリリース・バージョン。第3.3項「アプリケーション機能の表示プロパティの設定」も参照してください。

   - バージョン・コード: アプリケーション・コードのバージョンを表す整数値。これは、他のアプリケーションによってプログラムで、アップグレードかダウングレードかチェックされます。デフォルトは1で、これが最小の値です。任意の値を選択し、リリースごとに1つずつ値を増やすことができます。

#### 27.2.4.2 デプロイメント・オプションの設定

「オプション」ページでは、`javac`コンパイラ・ツール・オプションによって渡される値、zipalignオプションおよびAndroid APIリビジョンを設定できます。

R.javaファイルと.classファイルのJDK互換性レベルを設定するには:

1. 「ソース・ファイル」ドロップダウン・リストからJDK互換性レベルを選択します。この値は、デプロイメントで`javac`ツールを実行し、`javac` `-source`オプションを使用して`R.java` (アプリケーション・リソースの参照用にAndroidによって生成されたファイル)をコンパイルする際に指定されます。

   `R.java`の詳細は、Android開発者のWebサイト(`http://developer.android.com/guide/topics/resources/accessing-resources.html`)で入手可能な「Accessing Resources」を参照してください。

2. `「クラス・ファイル」`ドロップダウン・リストから、コンパイルされた.classファイルのJDKバージョンの互換性を選択します。この値は、デプロイメントで`javac`ツールを実行し、`javac` `-target`オプションを使用して`R.java`ファイルをコンパイルする際に指定されます。

3. 「ターゲットSDK APIレベル」には、アプリケーションが実行される最小APIレベルが表示されます。この値は変更できません。詳細は、Android開発者のWebサイト(``http://developer.android.com/guide/topics/manifest/manifest-intro.html`)で入手可能な「The AndroidManifest.xml File」で、<uses-sdk>`属性の説明を参照してください。

4. 「最小SDK APIレベル」ドロップダウン・リストから、アプリケーションが実行できる最小APIレベルを選択します。最小(デフォルト)値は15で、これはAndroid 4.0.3プラットフォームに対応します。最小SDKのバージョンを上げると、旧バージョンのAndroidを実行しているデバイスをアプリケーションのインストール対象から除外できます。

5. 「文字エンコーディング」ドロップダウン・リストから、コンパイラがASCII文字セット以外の文字を解釈する方法を制御するネイティブエンコーディング名を選択します。デフォルトはUTF-8です。

ZIP位置合せオプションを設定するには:

バイト位置合せ(32ビットまたは64ビット)を選択します。32ビット(デフォルト)を選択すると、4バイト境界の位置合せが提供されます。

デプロイ済アプリケーションの記憶域オプションを設定するには:

デフォルトでは、モバイル・アプリケーションは、JDeveloperからデバイスにデプロイされた後またはGoogle Playなどのアプリケーション・マーケットプレイスからダウンロードされた後、Androidデバイスの内部記憶域に格納されます。「優先記憶域の場所」ドロップダウン・リストから使用可能な次のオプションでは、モバイル・アプリケーションの優先記憶域の場所を指定できます。

- 内部: モバイル・アプリケーションをデバイスの内部記憶域に強制的にインストールします。

- 外部: アプリケーションをデバイスのSDカードにインストールできます。ただし、Androidシステムは、SDカードにアプリケーションをインストールできないことを検出した場合(たとえば、SDカードがマウントされていない場合や、SDカードは存在するものの十分な領域がない場合)、かわりにアプリケーションをデバイスの内部記憶域にインストールします。モバイル・デバイス・ユーザーは、システム設定を使用して、内外の記憶域間でアプリケーションを移動できます。

- 自動: アプリケーションをデバイスの外部記憶域または内部記憶域にインストールできることを指定します。モバイル・デバイス・ユーザーは、システム設定を使用して、内外の記憶域間でアプリケーションを移動できます。

「外部」オプションまたは「自動」オプションを選択すると、デプロイメント・フレームワークによって`AndroidManifest.xml`ファイルの`<manifest>`要素が`android:installLocation`属性、および`"preferExternal"`または`"auto"`という値で更新されるようにすることができます。`AndroidManifest.xml`ファイルにこの属性を入力すると、モバイル・アプリケーションを外部SDカードまたは内部記憶域に格納できます。詳細は、Android開発者のWebサイト(http://developer.android.com/guide/topics/data/install-location.html`)またはAndroid SDKのドキュメントから入手できる『Data Storage Guide』`の「App Install Location」を参照してください。

ロギング・レベルを設定するには、次のようにします。

Androidデプロイメントに「詳細出力」を選択して、`.apk`のビルド時にデプロイメントによって起動される各コマンド行ツールによって提供される全出力をログに記録します。このオプションを選択しないと、デプロイメントですべての出力がログに記録されません。

#### 27.2.4.3 Android署名オプションの定義

アプリケーションは、Androidデバイスまたはエミュレータにデプロイする前に、署名する必要があります。Androidでは、認証局は不要です。アプリケーションは自己署名できます。

デプロイメントにおけるモバイル・アプリケーションの署名方法の定義は、2つの手順で構成されます。まず、「MAF」の「プラットフォーム」プリファレンス・ページで、Androidアプリケーションの署名に使用されるキーのデバッグおよびリリース・プロパティを定義します。デバッグおよびリリースの署名プロパティは、一度構成するのみでかまいません。これらのオプションを定義したら、デプロイメント・プロファイルを構成して、デバッグ・モードとリリース・モードのどちらでアプリケーションをデプロイするかを指定します。

始める前に

キーストア・ファイルが存在しない場合は、keytoolユーティリティを使用して、キーストア・ファイルを作成できます(例27-1を参照)。

例27-1 キーストアの生成

    keytool -genkeypair
            -v
            -keystore c:\jdeveloper\mywork\releasesigning.keystore
            -alias releaseKeyAlias
            -keyalg RSA
            -keysize 2048
            -validity 10000

Android開発者のWebサイト(`http://developer.android.com/tools/publishing/app-signing.html`)で入手可能な「Signing Your Applications」で説明されているとおり、keytoolでは、キーストアを生成する前に、キーストアとキーのパスワード、およびキーの識別名フィールドを入力することを求められます。例27-1のキーストアには、10,000日間有効な単一のキーが含まれています。keytoolユーティリティの使用方法については、Java SEテクニカル・ドキュメント(`http://download.oracle.com/javase/index.html`)を参照してください。

デバッグ・モードのキー・オプションを構成するには:

1. 「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択します。

2. 「プラットフォーム」を選択します。

3. 「デバッグ」タブ(図27-11を参照)を選択します。

   図27-11 デバッグ・デプロイメントの構成

4. 「キーとキーストア・パスワード」フィールドに、デバッグ・デプロイメントに必要なキーストア・ファイルとキーを作成するためにデプロイメントで使用されるパスワードを入力します。Androidデバイスまたはエミュレータへのデプロイメント用のキーストアとキーファイルを生成するこのパスワードには、6文字以上の長さであれば、任意の値を指定できます。デフォルトのパスワードはAndroidです。

リリース・モードのキー・オプションを構成するには:

1. 「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択します。

2. 「プラットフォーム」を選択します。

3. 「リリース」タブ(図27-9を参照)を選択して、次を定義します。

   - キーストアの場所: 配布するアプリケーションの署名に使用する秘密鍵を含むキーストアのディレクトリを入力、参照および取得します。

   - キーストア・パスワード: キーストアのパスワードを入力します。このパスワードを使用すると、物理ファイルにアクセスできます。

   - キーの別名: キーの別名を入力します。これはkeytoolの`-alias`引数に使用する値セットです。別名の最初の8文字のみが使用されます。

   - キー・パスワード: キーのパスワードを入力します。このパスワードを使用すると、キーストア内のキー(別名によって識別される)にアクセスできます。

     ヒント: keytoolユーティリティによるキーストアの生成前に、keytoolユーティリティが要求するパスワードとキー・パスワードを入力します。

     これらのパラメータでは、アプリケーションの署名方法の指定に加え、`R.Java`クラスのコンパイル方法も指定します。

4. 「OK」をクリックします。

Androidビルド・モードを設定するには:

1. 「オプション」ページで、ビルド・モードとして「デバッグ」または「リリース」を選択します。

   - アプリケーションの開発やテスト(JavaやJavaScriptのデバッグなど)を行う際は「デバッグ」を選択します。このオプションを使用すると、秘密鍵を提供しなくても、Androidプラットフォーム上でアプリケーションをデプロイできます。Androidエミュレータまたはテスト用のAndroidデバイスにアプリケーションをする場合は、このオプションを使用します。第30.3.5項「JavaコードおよびJavaScriptのデバッグを有効にする方法」も参照してください。

     注意: デバッグ・キーストアおよびキーで署名されたアプリケーションは公開できません。デバッグ・キーストアおよびキーは、テストのみに使用され、エンド・ユーザーへのアプリケーションの公開には使用できません。

   - アプリケーションを公開する準備ができた場合は、「リリース」を選択します。このオプションは、アプリケーション・マーケットプレイス(Google Playなど)にアプリケーションを公開する準備ができた場合に使用します。

     ヒント: アプリケーションのパフォーマンスをテストするには、デバッグ・モードではなくリリース・モードを使用します。

2. 「OK」をクリックします。

   デバッグ・モードまたはリリース・モードで署名された`.apk`ファイルは、デバイスまたはエミュレータにデプロイできます。実行時に、MAFは、図27-12に示すように、赤の三角形内に感嘆符で表されるデバッグ・シンボルを重ねることで、アプリケーションがデバッグ・モードでデプロイされたことを示します。

   図27-12 デプロイメント・モード

#### 27.2.4.4 資格証明の格納に関する必知事項

MAFは、キーおよびキーストアのパスワードをファイルベースの資格証明ストア(`cwallet.sso`)に格納します。資格証明の格納および取得を管理するこのファイルは、ユーザーのJDeveloperシステム・フォルダの`o.maf`フォルダ内に存在します。たとえば、Windows 7環境では、`cwallet.sso`ファイルは`C:\Users\jsmith\AppData\Roaming\JDeveloper\system12.1.3\o.maf`に存在します。

詳細は、『Oracle Fusion Middleware管理者ガイド』の「Oracleウォレットについて」の項、および『Oracle Fusion Middleware Oracle Platform Security Servicesによるアプリケーションの保護』の資格証明ストアの基本の項を参照してください。

注意: MAFは、キーおよびキーストア資格証明を`product-preferences.xml`というファイルに格納します。JDeveloperおよびMAFの現在のバージョンのインストール・プロセス時に「インポート・プリファレンスの確認」ダイアログの`「はい」`をクリックしてプリファレンス設定を保持した場合、MAFはこれらの資格証明をcwallet.ssoファイルに移行します。ただし、`cwallet.sso`ファイルは、現在のバージョンのOracle JDeveloperとMAFの他のインストールには移行されません。再インストールした場合(または別のインストールを作成した場合)は、`cwallet.sso`ファイルを`o.maf`フォルダにコピーするか、または「プラットフォーム」プリファレンス・ページでリリース・モードの資格証明を再構成する必要があります。

#### 27.2.4.5 Androidアプリケーションへのカスタム・イメージの追加方法

サイズや解像度の異なるAndroidデバイス上でMAFアプリケーション・アイコンが適切に表示されるようにするには、同じイメージの低密度、中密度および高密度バージョンを用意する必要があります。MAFは、これらの表示要件を満たすデフォルトOracleイメージを提供します。ただし、アプリケーションでカスタム・アイコンが必要とされる場合は、「アプリケーション・イメージ」ページ(図27-13を参照)を使用して、アプリケーション・アイコンとスプラッシュ画面用のPNG形式のイメージを選択することで、デフォルト・イメージをオーバーライドできます。スプラッシュ画面には、縦向きと横向きのイメージを追加できます。カスタム・イメージ・ファイルを追加しない場合は、デフォルトのOracleアイコンが使用されます。カスタム・イメージを作成するには、Android開発者のWebサイト(`http://developer.android.com/design/style/iconography.html`)から入手可能な『Iconography』を参照してください。

図27-13 Androidアプリケーション用のカスタム・イメージの設定

始める前に

Androidテーマに適しており、複数の画面タイプをサポートできるディメンション、密度およびコンポーネントを使用するPNG、JPEGまたはGIFファイル形式のイメージを取得します。詳細は、Android開発者のWebサイト(`http://developer.android.com/guide/practices/screens_support.html`)で入手可能な「Supporting Multiple Screens」を参照してください。

カスタム・イメージを追加するには:

1. 「アプリケーション・イメージ」をクリックします。

2. 「参照」機能を使用して、プロジェクト・ファイルからスプラッシュ画面およびアイコン・イメージ・ファイルを選択します。図27-13には、低密度、中密度、高密度および超高密度ディスプレイを装備するデバイスでの表示にアプリケーションで使用されるアプリケーション・アイコンのイメージと縦向きのスプラッシュ画面用のイメージを選択する様子が示されています。

3. 「OK」をクリックします。

#### 27.2.4.6 JDeveloperによってAndroidアプリケーション用のイメージがデプロイされる場合の処理

デプロイメントの際、MAFにより、JDeveloperは、ソースの場所から一時デプロイメント・フォルダにイメージをコピーできます。MAF拡張機能に付属のデフォルト・イメージ(`アプリケーション・ワークスペース・ディレクトリ`\`Application Resources\Resources\images`内)の場合は、JDeveloperはシードされた場所から、ビュー・コントローラ・プロジェクトのデプロイメント・サブディレクトリ(`アプリケーション・ワークスペース``\ViewController\deploy`)にコピーします。表27-2に示されているように、各イメージ・ファイルは、`drawable`オブジェクトにちなんで名付けられた`drawable`というサブディレクトリにコピーされます。詳細は、Android開発者のWebサイト(`http://developer.android.com/reference/android/graphics/drawable/Drawable.html`)を参照してください。それぞれの`drawable`ディレクトリは、イメージ密度(`ldpi`、`mdpi`、`hdpi`および`xhdpi`)と向き(`port`、`land`)に対応します。これらのディレクトリ内で、JDeveloperは、各アイコン・イメージ・ファイルの名前を`adfmf_icon.png`に、各スプラッシュ画面イメージの名前を`adfmf_loading.png`に変更します。

表27-2 シードされたアプリケーション・イメージのデプロイメント・ファイルの場所

ソース・ファイル(...\resource\Android) | 一時デプロイメント・ファイル(...ViewController\deploy)
--- | ---
`display-ldpi-icon.png` | `drawable-ldpi\adfmf_icon.png`
`display-mdpi-icon.png` | `drawable-mdpi\adfmf_icon.png`
`display-hdpi-icon.png` | `drawable-hdpi\adfmf_icon.png`
`display-xhdpi-icon.png` | `drawable-xhdpi\adfmf_icon.png`
`display-port-ldpi-splashscreen.png` | `drawable-port-ldpi\adfmf_loading.png`
`display-port-mdpi-splashscreen.png` | `drawable-port-mdpi\adfmf_loading.png`
`display-port-hdpi-splashscreen.png` | `drawable-port-hdpi\adfmf_loading.png`
`display-port-xhdpi-splashscreen.png` | `drawable-port-xhdpi\adfmf_loading.png`
`display-land-ldpi-splashscreen.png` | `drawable-land-ldpi\adfmf_loading.png`
`display-land-mdpi-splashscreen.png` | `drawable-land-mdpi\adfmf_loading.png`
`display-land-hdpi-splashscreen.png` | `drawable-land-hdpi\adfmf_loading.png`
`display-land-xhdpi-splashscreen.png` | `drawable-land-xhdpi\adfmf_loading.png`

カスタム・イメージの場合、JDeveloperは、アプリケーション・アイコンのセットを指定の場所から一時デプロイメントの場所の対応する密度と向きのサブディレクトリにコピーします。

### 27.2.5 iOSデプロイメント・プロファイルの作成方法

iOSの場合は、デプロイメント・プロファイルのプロパティ・エディタを使用して、iOSアプリケーションのビルド構成と、スプラッシュ画面イメージおよびアプリケーション・アイコンの場所を定義します。

始める前に

JDeveloperも実行されているAppleコンピュータに、Xcodeをダウンロードします(Xcodeには、Xcode IDE、パフォーマンス分析ツール、iOSシミュレータ、Mac OS XおよびiOS SDKが含まれています)。

ヒント: アプリケーションのコンパイルに最低限必要なサポート対象のバージョンについては、Oracle Technology Network (`http://www.oracle.com/technetwork/developer-tools/maf/documentation`)で動作保証とサポートのマトリクスを参照してください。

Xcodeはデプロイメント時に使用されるので、JDeveloperからモバイル・アプリケーションをデプロイする前にAppleコンピュータにインストールする必要があります。

ヒント: Xcodeの最新バージョンはApp Storeから入手できますが、次のサイトから以前のバージョンをダウンロードできます。 `https://developer.apple.com/xcode/` このサイトにアクセスするには、Apple IDおよびApple開発者としての登録が必要です。

Xcodeをダウンロードしたら、「iOSプラットフォーム」プリファレンス・ページで、そのxcodebuildツールの場所を入力する必要があります。iOSシミュレータへのデプロイメントの場合は、iOSシミュレータのSDKの場所を入力します。詳細は、『Oracle Mobile Application Frameworkのインストール』のプラットフォームとフォーム・ファクタに応じた開発環境の構成に関する項を参照してください。

注意: iTunesとiOSシミュレータの両方を1回以上実行してから、それらの場所を「iOSプラットフォーム」プリファレンス・ページに入力します。

モバイル・アプリケーションを(iOSシミュレータではなく) iOSデバイスにデプロイするには、iOSプロビジョニング・プロファイルからプロビジョニング・プロファイルと証明書の両方を取得する必要があります。詳細は、第27.2.5.2項「デバイス署名オプションの設定」を参照してください。

デプロイメント・プロファイルを作成する手順は、次のとおりです。

1. 「アプリケーション」→「アプリケーション・プロパティ」→「デプロイメント」を選択します。

2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。

3. 「iOSオプション」(図27-14を参照)を選択します。

4. デフォルト値をそのまま使用するか、次を定義します。

   - アプリケーション・バンドルID: 必要な場合は、このアプリケーションで使用する、会社のドメイン名を特定するバンドルIDを入力します。アプリケーション・バンドルIDは、iOSデバイスにインストールされた各アプリケーションに対して一意であることと、リバースパッケージ・スタイルの命名規則(つまり、com.<organization name>.<company name>)に従うことが必要です。詳細は、iOS Developer Library (http://developer.apple.com/library/ios/navigation/`)で入手可能な『App Distribution Guide』`を参照してください。iOS Provisioning Portalを使用したバンドル・シードIDの取得の詳細は、第27.4.4.3.項「アプリケーションIDの登録」を参照してください。また、第3.3項「アプリケーション機能の表示プロパティの設定」も参照してください。

     注意: アプリケーション・バンドルIDに空白を含めることはできません。

     それぞれのアプリケーション・バンドルIDは一意であるため、複数のモバイル・アプリケーションを同じデバイスにデプロイできます。アプリケーション・バンドルIDさえ異なっていれば、2つのアプリケーションに同じ名前を指定できます。同じデバイスにデプロイされるモバイル・アプリケーションは、それぞれ別のサンドボックスに配置されます。アプリケーションが相互に認識したり、データを共有することはありません(デバイス・スコープのみが共通になります)。

   - アプリケーション・アーカイブ名: 必要に応じて、`.ipa`ファイルまたは`.app`ファイルの名前を入力します。「デプロイメント・アクション」ダイアログ(`図27-24`を参照)で「配布パッケージにデプロイ」または「デバイスとの同期のためにiTunesにデプロイ」オプションを選択すると、MAFによって.ipaファイルが作成されます。`「アプリケーションのシミュレータへのデプロイ」`オプションを選択すると、.appファイルが作成されます。または、デフォルトの名前を使用します。詳細は、第27.4.2項「iOSデバイスへのアプリケーションのデプロイ方法」と第27.4.5項「App StoreへのiOSアプリケーションの配布方法」を参照してください。

     MAFのデフォルトでは、`.ipa`ファイル(または`.app`ファイル)の名前は、`maf-application.xml`ファイルで構成されているアプリケーションの`id`属性に基づいて付けられます。詳細は、第3.3項「アプリケーション機能の表示プロパティの設定」を参照してください。

   - 最小iOSバージョン: アプリケーションをデプロイできるiOSバージョンの中で、最も古いものを指定します。デフォルト値は現在のバージョンです。バージョンは、インストールされているSDKのバージョンによって異なります。

   - シミュレータ: アプリケーションをデプロイするシミュレータのハードウェアとiOSバージョンを選択します。ドロップダウン・リストに使用可能なバージョンが表示されます。詳細は、iOS Developer Library (http://developer.apple.com/library/ios/navigation/`)で入手可能な『iOS Simulator User Guide』`を参照してください。

   - ファミリ: アプリケーションを実行するiOS製品ファミリを選択します。デフォルト・オプションはiPadとiPhoneの両方です。

   図27-14 iOSオプションの設定

#### 27.2.5.1 iOSビルド・オプションの定義

iOSビルド・オプションでは、デバッグまたはリリース・ビットとライブラリによりアプリケーションをデプロイできます。「iOSオプション」ページでは、Oracle Mobile Security Suite (OMSS)によるコンテナ化を有効にすることも可能です。

始める前に

iOSアプリケーション(`.ipa`ファイル)をiOSデバイスにデプロイするには、インストールの必須コンポーネントであるプロビジョニング・プロファイルと、デバイス上の開発者とアプリケーションを特定する署名済証明書が必要です。これらはiOS Provisioning Portalから取得する必要があります。詳細は、第27.4.4項「iOSデバイスへのアプリケーションのデプロイに関する必知事項」を参照してください。さらに、「iOSプラットフォーム」プリファレンス・ページで、プロビジョニング・プロファイルの場所と証明書の名前を入力する必要があります。詳細は、第27.2.5.2項「デバイス署名オプションの設定」を参照してください。

ビルド・オプションを設定するには:

1. 「アプリケーション」→「アプリケーション・プロパティ」→「デプロイメント」を選択します。

2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。

3. 「iOSオプション」(図27-14を参照)を選択します。

4. 次のビルド・オプションから選択します。

   - デバッグ: 開発用のビルドの場合はこのオプションを選択します。デバッグ・ビルドを指定すると、デバッグ・シンボルが含まれます。第30.3.2項「iOSプラットフォームでのデバッグ方法」と第30.3.5項「JavaコードおよびJavaScriptのデバッグを有効にする方法」も参照してください。

   - リリース: リリース・ビットおよびライブラリを使用してビルドをコンパイルする場合に選択します。

     ヒント: アプリケーションのパフォーマンスをテストするには、デバッグ・モードではなくリリース・モードを使用します。

   - Oracleモバイル・セキュリティ・スイートの有効化: Oracle Mobile Security Suiteによるコンテナ化を有効にする場合に選択します。詳細は、第27.9項「Oracle Mobile Security Suiteでのデプロイ」を参照してください。

実行時に、MAFは、図27-12「デプロイメント・モード」に示すように、赤の三角形内に感嘆符で表されるデバッグ・シンボルを重ねることで、アプリケーションがデバッグ・モードでデプロイされたことを示します。

#### 27.2.5.2 デバイス署名オプションの設定

「iOSプラットフォーム」プリファレンス・ページには、開発コンピュータ上でのプロビジョニング・プロファイルの場所と署名アイデンティティの名前のフィールドが含まれています。アプリケーションを配布パッケージにデプロイしたり、デバイスとの同期のためにiTunesにデプロイする場合は、これらのパラメータを定義する必要があります。署名アイデンティティはアプリケーションのコード署名に使用します。Xcodeで開発用証明書が必要な場合、証明書とその公開鍵はメンバー・センターに格納され、署名アイデンティティ(公開鍵と秘密鍵を保持する証明書)は開発者のキー・チェーンに格納されます。この秘密鍵がないとコード署名できません。

注意: モバイル・アプリケーションをiOSシミュレータにデプロイする場合は、署名アイデンティティとプロビジョニング・プロファイルのいずれも不要です。

署名オプションを設定するには:

1. 「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」→「iOSプラットフォーム」を選択します。

2. 「プロビジョニング・プロファイル」ドロップダウン・リストからプロビジョニング・プロファイルを選択します。

3. 「署名アイデンティティ」フィールドに、コードの作成者(開発者や会社など)を特定する開発者または配布証明書の名前を入力します。証明書の名前は、Keychain Accessユーティリティ(Applicationsフォルダからアクセス)を使用して表示できます。Keychain Accessユーティリティから名前全体をコピーしてください。このフィールドに入力された名前は、次の例のように表示されます。

       iPhone Developer: John Smith (Oracle123)

   図27-15 「iOSプラットフォーム」プリファレンス・ページの「デバイス署名」セクション

注意: プロビジョニング・プロファイルには、アプリケーションの開発バージョン用とリリース・バージョン用の両方があります。アプリケーションのリリース・バージョンに使用されるプロビジョニング・プロファイルは、あらゆるデバイスにインストールできます。一方、開発バージョン用のプロビジョニング・プロファイルは、IDがプロファイルに埋め込まれたデバイスのみにインストールできます。詳細は、iOS Developer Library (http://developer.apple.com/library/ios/navigation/```)で入手可能な『App Distribution Guide』`を参照してください。

#### 27.2.5.3 iOSアプリケーションへのカスタム・イメージの追加

「アプリケーション・イメージ」ページでは、アプリケーション・アイコンおよびアートワークに使用されるデフォルトのOracleイメージをカスタム・イメージでオーバーライドして、アプリケーションを再ブランディングできます。図27-16に示されているこのページのオプションでは、様々な状況、デバイスの向きおよびデバイスの解像度で使用されるカスタム・イメージの場所を入力できます。iOSアプリケーション・アイコン・イメージの詳細は、『iOS Human Interface Guidelines』の「Icon and Image Design」を参照してください。これらのドキュメントは、iOS Developer Library (`http://developer.apple.com/library/ios/navigation/`)から入手できます。

注意: すべてのイメージはPNG形式であることが必要です。

カスタム・イメージを追加するには:

1. 「アプリケーション」→「アプリケーション・プロパティ」→「デプロイメント」を選択します。

2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。

3. iOS用デプロイメント・プロファイルのプロパティ・エディタの左側にあるツリーから、「iOSオプション」→「アプリケーション・イメージ」を選択します。

4. 「参照」を選択し、アイコン・イメージを選択して、iTunesによって`.ipa`ファイルに割り当てられるデフォルトのAppleイメージをオーバーライドします。このイメージはすべてのアプリケーションに必要とされ、iPhoneアプリケーションとiPadアプリケーションのどちらも512 x 512ピクセルであることが必要です。詳細は、第27.2.5.4項「iTunesアートワークに関する必知事項」を参照してください。

5. 使用可能なイメージ・タイプをツリーに表示するデバイス・タイプを選択します。デフォルトでは、MAFはiPadおよびiPhoneデバイスで使用可能なすべてのイメージ・スタイルおよびイメージ・タイプを表示します。ただし、図27-16に示すように、デバイス・タイプを選択して選択を絞り込むことができます。「アイコン・フォルダ」フィールドには、MAFによって、これらのイメージ・ファイルが格納されている、アプリケーションの`Resources`ディレクトリ内の場所が表示されます。

   図27-16 アプリケーション・イメージの選択

6. ツリーからイメージ・タイプを選択します。

7. 別のイメージを選択するには、「ファイル」フィールドで「参照」を選択します。このイメージ・ファイルは、現在のアプリケーション内に存在する必要があります。

   デプロイメント時に、JDeveloperはカスタム・イメージ・ファイルをデプロイメント・プロファイルにコピーし、その名前をデフォルト・イメージの名前に一致するように変更します。

8. 「OK」をクリックします。

#### 27.2.5.4 iTunesアートワークに関する必知事項

デフォルトでは、iTunesを通してiOSデバイスにデプロイされる、またはダウンロード用のアーカイブ(`.ipa`ファイル)としてデプロイされるモバイル・アプリケーションでは、別途指定されていないかぎり、デフォルトのOracleイメージが使用されます。

デプロイされるアプリケーションのアイコンとしてiTunesアートワーク・イメージを選択することで、デフォルトのイメージをオーバーライドします。イメージを使用してアプリケーションのバージョンを区別できます。図27-17に、デフォルト・イメージとユーザーが選択したイメージの違いを示します。Application4にはデフォルト・イメージが、Application6にはユーザーが選択したイメージ(512 x 512ピクセルにスケールを変更したOracleアイコン)が表示されています。

図27-17 カスタムとデフォルトのアプリケーション・アイコン

デプロイメント時に、MAFは、`.ipa`ファイルのトップレベルのiTunesArtworkというファイルにそのiTunesアートワーク・イメージを追加することで、iTunesでそのアイコンが表示されるようにします。

注意: iTunesアートワークがアプリケーションにパッケージ化されるのは、デバイスとの同期のためにiTunesにデプロイというデプロイメント・タイプを選択した場合のみです。

#### 27.2.5.5 表示をデバイスの特定の向きに制限する方法

デフォルトで、MAFは、iPhoneとiPadの両方ですべての向きをサポートします。たとえば、iPads上で上下逆の縦向きでのみ表示する必要があるアプリケーションでは、「デバイスの向き」ページ(図27-18を参照)を使用して、アプリケーションの回転をこれらの向きのみに制限できます。

図27-18 デバイスの向きの選択

アプリケーションの表示をデバイスの特定の向きに制限するには:

1. 「デバイスの向き」を選択します(図27-18を参照)。

2. 表27-3にリストされた向きの中から、不要な向きをすべて消去します。デフォルトでは、MAFは、これらすべてのデバイスの向きにデプロイします。デフォルトでは、これらの向きがすべて選択されています。

   表27-3 iPhoneデバイスの向き

   アイコン | 説明
   --- | ---
   | iPad、縦: ホーム・ボタンは画面の下部。
   | iPad、上下逆: ホーム・ボタンは画面の上部。
   | iPad、横左: ホーム・ボタンは画面の左側。
   | iPad、横右: ホーム・ボタンは画面の右側。
   | iPhone、縦: ホーム・ボタンは画面の下部。
   | iPhone、上下逆: ホーム・ボタンは画面の上部。
   | iPhone、横左: ホーム・ボタンは画面の左側。
   | iPhone、横右: ホーム・ボタンは画面の右側。

3. 「OK」をクリックします。

#### 27.2.5.6 デバイスの向きを選択解除する場合の処理

デバイスの向きを選択解除すると、ソース`.plist`ファイルが更新されます。

## 27.3 Androidアプリケーションのデプロイ

デプロイメント・プロファイルを定義したら、「デプロイメント・アクション」ダイアログ(図27-19を参照)を使用してAndroidプラットフォームにモバイル・アプリケーションをデプロイできます。このダイアログを使用すると、完了したアプリケーションを、Androidエミュレータまたはテスト用のAndroidデバイスにデプロイできます。アプリケーションのテストとデバッグが完了したら、このダイアログを使用して、モバイル・アプリケーションをAndroidアプリケーション・パッケージ(`.apk`)・ファイルとしてバンドルできます。これによって、アプリケーション・マーケットプレイス(Google Playなど)を通して、アプリケーションをエンド・ユーザーに公開することが可能になります。

ヒント: 「デプロイメント・アクション」ダイアログのかわりに、OJDeployコマンド行ツールを使用してモバイル・アプリケーションをAndroidプラットフォームにヘッドレス・モードでデプロイすることもできます。詳細は、第27.8項「コマンド行からのMAFアプリケーションのデプロイ」を参照してください。

図27-19 Androidアプリケーションの「デプロイメント・アクション」ダイアログ

### 27.3.1 AndroidエミュレータへのAndroidアプリケーションのデプロイ方法

モバイル・アプリケーションはAndroidエミュレータ(Android Virtual Device (AVD)とも呼ばれる)に直接デプロイできます。

始める前に

Androidエミュレータにデプロイするには、次を行う必要があります。

- Androidプラットフォーム・バージョン21 (Android 5.0)をインストールします。

- Android Virtual Deviceインスタンスの構成にARMまたはIntel Atom x86のシステム・イメージが反映されていることを確認します。

- デプロイメント・プロファイルの「Androidオプション」ページで、次を行います。

  1. 「デバッグ」が選択されていることを確認します。

  2. 「OK」をクリックします。

  注意: 「Androidプラットフォーム」プリファレンス・ページは、デバッグ・モードのデプロイメント用のキーストアとキーの生成に使用されるパスワードで構成する必要があります。詳細は、第27.2.4.3項「Android署名オプションの定義」を参照してください。

- アプリケーションをデプロイする前にAndroidエミュレータ(Android Virtual Device)を起動します。

  エミュレータは、Android Virtual Device Manager(図27-20を参照)またはコマンド行を使用して起動できます。コマンド行から起動する場合は、`tools`ディレクトリ(`Android\android-sdk`内)に移動し、`emulator -avd`に続けてエミュレータ名を入力することで(例: `-avd AndroidEmulator1`)、エミュレータを起動します。

  注意: デプロイメント時にはAndroidエミュレータを1つのみ実行できます。

  図27-20 Android Virtual Device Managerを使用したエミュレータの起動

アプリケーションをAndroidエミュレータにデプロイするには:

1. 「アプリケーション」→「デプロイ」を選択し、Androidデプロイメント・プロファイルを選択します。

2. 「アプリケーションのエミュレータへのデプロイ」→「次へ」を選択します。

3. 「サマリー」ページ(図27-8を参照)をレビューし、「戻る」を選択して別のデプロイメント・アクティビティを選択するか、「終了」を選択します。「サマリー」ページには、デプロイメント・プロファイルの次のパラメータが表示されます。

   - アプリケーション・バンドルID: アプリケーションを特定する、Java言語のような一意のパッケージ名。

     注意: 図27-21の「サマリー」ページには、アプリケーション・バンドルIDが、エミュレータへのデプロイメントの成功に必要なリバースパッケージ書式であることが示されています。リバースパッケージ書式に従わないアプリケーションをデプロイすると、エミュレータが停止して、デプロイメントを完了できなくなります。

   - ファイル: Androidターゲットにデプロイされる`.apk`の名前。

   - デプロイ・モード: ビルド・モード。この値は、デプロイメント・プロファイルに設定されている値に応じて、「リリース」と「デバッグ」のいずれかになります。

   図27-21 Androidエミュレータ・デプロイメントのサマリー

4. デプロイメント・ログをレビューします(図27-22を参照)。デプロイメント・ログには、デプロイヤがAndroidエミュレータの実行中インスタンスを検出し、Androidデバッグ・ブリッジ・サーバーを起動したことが示されます。第27.3.6項「Androidデバッグ・ブリッジの使用方法に関する必知事項」も参照してください。

   図27-22 デプロイメント・ログ

### 27.3.2 Androidデバイスへのアプリケーションのデプロイ方法

モバイル・アプリケーションは、API 15以降(プラットフォーム4.0.3)で動作するAndroidデバイスに直接デプロイできます。

始める前に

Androidデバイスに直接デプロイするためには、JDeveloperをホストする開発コンピュータにデバイスを接続し、そのデバイスを開発モードに設定して、USBデバッグを有効にします。詳細は、『Oracle Mobile Application Frameworkのインストール』のAndroidデバイスの設定方法に関する項を参照してください。

「Androidオプション」ページで、ビルド・モードとして「デバッグ」を選択します。「Androidプラットフォーム」プリファレンス・ページでデバッグ署名資格証明が構成されていることを確認します。詳細は、第27.2.4.1項「アプリケーションの詳細オプションの設定」を参照してください。

Androidデバイスにアプリケーションをデプロイするには:

1. 「アプリケーション」→「デプロイ」を選択し、Androidデプロイメント・プロファイルを選択します。

2. 「アプリケーションのデバイスへのデプロイ」→「次へ」を選択します。

3. 「概要」ページを確認します。「戻る」または「次へ」をクリックします。

4. 「終了」をクリックします。

### 27.3.3 Androidアプリケーションの公開方法

第30章「MAFアプリケーションのテストおよびデバッグ」の説明に従ってアプリケーションのテストとデバッグが完了したら、Android開発者のWebサイト(`http://developer.android.com/tools/publishing/publishing_overview.html`)の説明に従ってアプリケーション・マーケットプレイス(Google Playなど)にアプリケーションを公開できます。

始める前に

デプロイメント・プロファイルの「Androidオプション」ページで、ビルド・モードとして「リリース」を選択します。

注意: 第27.2.4.3項「Android署名オプションの定義」の説明に従って、「Androidプラットフォーム」プリファレンス・ページ(「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択してアクセス)で署名オプションを構成する必要があります。

.apkファイルとしてアプリケーションをデプロイするには:

1. 「アプリケーション」→「デプロイ」を選択し、Androidデプロイメント・プロファイルを選択します。

2. 「アプリケーションのパッケージへのデプロイ」→「次へ」を選択します。

3. 「サマリー」ページ(図27-21を参照)をレビューします。「戻る」または「次へ」をクリックします。

4. 「終了」をクリックします。

5. アプリケーション・マーケットプレイスにアプリケーションを公開します。

### 27.3.4 .apkファイル作成時のJDeveloperでの処理

アプリケーションをデプロイすると、次のものが`.apk`ファイルにデプロイされます。

- `adfmsrc`の内容

- `.adf`フォルダの内容

- `maf-application.xml`ファイルおよび`maf-feature.xml`ファイル

- `logging.properties`ファイル

- JVMファイル

### 27.3.5 最近使用されたデプロイメント・プロファイルの選択

デプロイメント・アクションを選択すると、JDeveloperによって「デプロイ」メニューにショートカットが作成されます。このショートカットを使用すると、同じデプロイメント・アクションを使用してアプリケーションを簡単に再デプロイできます。

### 27.3.6 Androidデバッグ・ブリッジの使用方法に関する必知事項

デプロイメントでは、デバイス(デバイスにデプロイする場合)またはエミュレータ(Androidエミュレータにデプロイする場合)が検出されるまで、Androidデバッグ・ブリッジ・サーバーが5回再起動されます。どちらも検出されない場合、図27-23に示すとおり、デプロイメント・プロセスは終了します。

図27-23 終了されたデプロイメント

デプロイメント前にAndroidデバッグ・ブリッジ・コマンド行ツールを使用する場合は、デプロイメントの完了後に同じコマンドを再度入力する必要があります。たとえば、デプロイメントの前にエミュレータまたはデバイスのロギング情報を表示するために`adb logcat`と入力した場合、ロギング出力の取得を再開するには、アプリケーションがデプロイされた後で再度`adb logcat`と入力する必要があります。Androidデバッグ・ブリッジ・コマンド行ツールは、Android SDKインストールの`platform-tools`ディレクトリ内に配置され、ここから実行されます。このツールの詳細は、Android開発者のWebサイト(`http://developer.android.com/tools/help/adb.html`)を参照してください。

## 27.4 iOSアプリケーションのデプロイ

図27-24に示された「デプロイメント・アクション」ダイアログでは、iOSアプリケーションを直接iOSシミュレータにデプロイするか、iTunesを通してデバイスにデプロイできます。iOSアプリケーションはAppleコンピュータからのみデプロイできます。iOSシミュレータへのデプロイメントを行うために、iOS Developer ProgramまたはiOS Developer Enterprise Programへのメンバーシップを取得する必要はありません。Apple開発者として登録されていれば、App Storeから入手できないXcodeのバージョンにアクセスできるので、問題ありません。iOSデバイスへのデプロイメントに必要なiOS開発者プログラム(第27.4.2項「iOSデバイスへのアプリケーションのデプロイ方法」と第27.4.5項「App StoreへのiOSアプリケーションの配布方法」で説明されています)の詳細は、`https://developer.apple.com/programs/`を参照してください。

図27-24 「デプロイメント・アクション」ダイアログ(iOSアプリケーション用)

ヒント: 「デプロイメント・アクション」ダイアログのかわりに、OJDeployコマンド行ツールを使用してモバイル・アプリケーションをiOSプラットフォームに手動でデプロイすることもできます。詳細は、第27.8項「コマンド行からのMAFアプリケーションのデプロイ」を参照してください。

### 27.4.1 iOSシミュレータへのiOSアプリケーションのデプロイ方法

「デプロイメント・アクション」ダイアログでは、iOSアプリケーションを直接iOSシミュレータにデプロイできます。

始める前に

iOSシミュレータへのデプロイメントを可能にするには、次のタスクを実行する必要があります。

- Xcodeをインストールして実行し、ライセンス契約を受諾して、指示に従ってインストール後のその他のタスクを実行します。

  注意: アプリケーションをiOSシミュレータにデプロイする前に、最低1回はXcodeを実行する必要があります。これを行わないと、デプロイメントに失敗します。

- デプロイメント・プロファイルの「iOSオプション」ページで、「デバッグ」を選択し、「OK」をクリックします。

- アプリケーションをデプロイする前に、iOSシミュレータが実行されている場合は、そのシミュレータを停止します。シミュレータを停止しなかった場合は、デプロイメント中にその処理が実行されます。

- iOS Developer Library (http://developer.apple.com/library/ios/navigation/`)で入手可能な『iOS Simulator User Guide』`を参照してください。iOSシミュレータはXcodeとともにインストールされます。

iOSシミュレータにアプリケーションをデプロイするには:

1. 「アプリケーション」→「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。

2. 「アプリケーションのシミュレータへのデプロイ」→「次へ」を選択します。

3. 「サマリー」ページ(図27-25を参照)をレビューします。このページには、次の値が表示されます。「終了」をクリックします。

   - アプリケーション・バンドルID: iOS Provisioning Portalから生成されたバンドル・シードが先頭に付加されたJava言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

   - ファイル: iOSターゲットにデプロイされる最終イメージのファイル名。

   - シグネチャ: アプリケーションを作成した開発者または会社。デプロイメント・プロファイルの「オプション」ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   - プロビジョニング・プロファイル: 1つ以上の開発用証明書とデバイスをアプリケーションIDと関連付けるプロビジョニング・プロファイルの名前。デプロイメント・プロファイルの「オプション」ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   注意: iOSシミュレータへのデプロイメントでは、署名アイデンティティとプロビジョニング・プロファイルの値を定義する必要はありません。このデプロイメント・シナリオでは、「サマリー」ページでこれらの値について<指定なし>と表示されます。

   図27-25 デプロイメント・アクションの「サマリー」ダイアログ

### 27.4.2 iOSデバイスへのアプリケーションのデプロイ方法

「デバイスとの同期のためにiTunesにデプロイ」オプションを使用すると、モバイル・アプリケーションをデバッグおよびテスト用のiOSデバイスにデプロイできます。iOSデバイスまたは配布サイトへのデプロイメントには、iOS Developer ProgramまたはiOS Developer Enterprise Programへのメンバーシップが必要です。詳細は、`https://developer.apple.com/programs/`を参照してください。

始める前に

JDeveloperからiOSデバイスにアプリケーションを直接デプロイすることはできません。アプリケーションは、Apple iTunesのApplicationsフォルダからデプロイする必要があります。そのためには、次のタスクを実行する必要があります。

- Apple iTunesを開発コンピュータにダウンロードし、それを1回以上実行して、必要なフォルダとディレクトリを作成します。

- 「iOSプラットフォーム」プリファレンス・ページで、`Automatically Add to iTunes`フォルダの場所(アプリケーションのデプロイメントに使用される場所)を設定します(図27-26を参照)。

  ヒント: ユーザーのホーム・ディレクトリ(`/User/<username>/Music/iTunes/iTunes Media/Automatically Add to iTunes.localized`)は、iTunes Mediaフォルダのデフォルト・ディレクトリですが、このフォルダの場所は次のように変更できます。 iTunesで、「Edit」→「Preferences」→「Advanced」を選択します。 「Change」をクリックし、新しい場所を参照します。 ライブラリを統合します。 元のiTunes Mediaフォルダを削除します。 手順の詳細は、Apple Support (`http://support.apple.com`)を参照してください。 「iOSプラットフォーム」プリファレンス・ページでも場所を更新する必要があります。

  図27-26 iTunes Mediaフォルダの場所の設定

- プロビジョニング・プロファイルおよび署名アイデンティティの名前と場所を「iOSプラットフォーム」プリファレンス・ページで入力します。iOS Provisioning Portalによって、iOSデバイスへのデプロイメントまたはApp Storeや内部ダウンロード・サイトへの`.ipa`ファイルの公開に必要な証明書とプロビジョニング・プロファイルが生成されます。

  注意: デバイスまたはアーカイブにデプロイするようにiOSプロビジョニング・プロファイルと署名アイデンティティを設定しないと、デプロイメントは失敗します。MAFでは、このような状況でデプロイできなかったアプリケーションがログに記録されます。詳細は、第27.4.4項「iOSデバイスへのアプリケーションのデプロイに関する必知事項」を参照してください。

- デプロイメント・プロファイルの「iOSオプション」ページで、ビルド・モードとして「デバッグ」を選択し、「OK」を選択します。

- iOS Developer Library (http://developer.apple.com/library/ios/navigation/`)で入手可能な『App Distribution Guide』`を参照してください。

iOSデバイスにアプリケーションをデプロイするには:

1. 「アプリケーション」→「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。

2. 「デバイスとの同期のためにiTunesにデプロイ」→「次へ」を選択します。

3. 「サマリー」ページをレビューします。このページには、次の値が表示されます。「終了」をクリックします。

   - アプリケーション・バンドルID: iOS Provisioning Portalから生成されたバンドル・シードが先頭に付加されたJava言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

   - ファイル: iOSターゲットにデプロイされる最終イメージのファイル名。

   - シグネチャ: アプリケーションを作成した開発者(または会社)。デプロイメント・プロファイルの「オプション」ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   - プロビジョニング・プロファイル: 1つ以上の開発用証明書とデバイスをアプリケーションIDと関連付けるプロビジョニング・プロファイルの名前。デプロイメント・プロファイルの「オプション」ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   注意: iTunesへのデプロイメントを可能にするには、「オプション」ページでシグネチャとプロビジョニング・プロファイルの値を指定する必要があります。

4. iOSデバイスを開発コンピュータに接続します。

5. iTunesを開いてデバイスを同期化します。

### 27.4.3 iOSデバイスにアプリケーションをデプロイする場合の処理

デプロイメントに成功すると、図27-17のようにアプリケーションがiTunesの「Apps」フォルダに表示されます。

### 27.4.4 iOSデバイスへのアプリケーションのデプロイに関する必知事項

iOS Developer Programのメンバーのみがアクセス可能なiOS Provisioning Portalを使用して最初にプロビジョニング・プロファイルを作成しないかぎり、iOSアプリケーション(つまり、`.ipa`ファイル)をiOSデバイスにデプロイしたり、App Storeまたは内部のホストされたダウンロード・サイトに公開することはできません。第27.2.5.2項「デバイス署名オプションの設定」の説明に従って、「オプション」ページでプロビジョニング・プロファイルの場所と証明書の名前を入力します。

iOS Developer Library (http://developer.apple.com/library/ios/navigation/)で入手可能な`『App Distribution Guide』`で説明されているように、プロビジョニング・プロファイルによって開発用証明書、デバイスおよびアプリケーションIDが関連付けられます。iOS Provisioning Portalでは、これらのエンティティとプロビジョニング・プロファイルを作成できます。

ヒント: プロビジョニング・プロファイルをダウンロードしたら、このファイルをダブルクリックして`Library/MobileDevice/Provisioning Profile`ディレクトリに追加してください。

図27-27 iOS Provisioning Portal

#### 27.4.4.1 iOS開発用証明書の作成

証明書は、開発者のアイデンティティに関する情報と公開鍵および秘密鍵が結合された電子的なドキュメントです。iOS開発用証明書がOS開発者として識別し、デプロイメントのためのアプリケーションの署名を有効にするので、証明書をダウンロードしたら、基本的に開発者自身のアイデンティティを開発コンピュータにインストールします。iOSオペレーティング環境では、すべての証明書がKeychainによって管理されます。

iOS Provisioning Portalの「Certificates」ページを使用して、CSR(証明書署名リクエスト)をログに記録します。CSRを完了すると、iOS Provisioning PortalによってiOS開発用証明書が発行されます。

#### 27.4.4.2 テストおよびデバッグ用のAppleデバイスの登録

開発コンピュータに証明書をインストールしたら、「Current Available Devices」タブ(iOS Provisioning Portalの「Devices」ページ内)をレビューして、開発者自身(またはその会社)がテストやデバッグに使用するAppleデバイスを特定します。シリアル番号のような一意のデバイス識別子(UDID)によって各デバイスを識別するこのリストにデバイスが含まれていないかぎり、アプリケーションはデプロイできません。

#### 27.4.4.3 アプリケーションIDの登録

アプリケーションIDは、デバイス上のアプリケーションの一意の識別子です。アプリケーションIDは、第3.2項「MAFアプリケーションの表示プロパティの設定」で説明されている書式の、バンドルIDと呼ばれる管理者が作成したリバース・ドメイン名の前に、バンドル・シードと呼ばれるAppleが生成した10文字の英数字文字列が付加された構成になります。図27-28には、他のアプリケーションとファイルやKeychainを共有しない、一意のアプリケーションIDが示されています。

図27-28 明示的なアプリケーションID

8E549T7128.com.oracle.*のように、アプリケーション名にワイルドカード文字(*)を使用すると、一連のアプリケーション間でアプリケーションIDを共有できます。たとえば、iOS Provisioning Portal上で管理者がcom.oracle.MAF.*という名前を付けた場合は、異なるアプリケーション(com.oracle.MAF.application1とcom.oracle.MAF.application2)を指定できます。

注意: アプリケーションでプッシュ通知を受信する場合、アプリケーションIDは、ワイルドカード文字ではなく、完全な一意のIDである必要があります。ワイルドカードによって識別されるアプリケーションでは、プッシュ通知を受信できません。詳細は、iOS Developer Library (http://developer.apple.com/library/ios/navigation/`)で入手可能な『Local and Push Notification Programming Guide』`の「Provisioning and Development」を参照してください。

アプリケーション間で8E549T7128などの同じ接頭辞を共有する場合、それらのアプリケーションでは、ファイルまたはキー・チェーンを共有できます。

注意: バンドルIDは、デプロイメント・プロファイルの「オプション」ページで設定されたアプリケーションIDと一致している必要があります。

### 27.4.5 App StoreへのiOSアプリケーションの配布方法

iOSデバイス上でのアプリケーションのテストとデバッグが終了したら、App Storeまたは内部ダウンロード・サイトを通してより広範なオーディエンスにアプリケーションを配布できます。App Storeにアプリケーションを公開するには、`.ipa`ファイルをiTunes Connectに送信する必要があります。これによって、`.ipa`ファイルをiTunesに追加して、アプリケーションを更新し、テスト・ユーザーを作成することが可能になります。

始める前に

アプリケーションを配布する前に、次のタスクを実行する必要があります。

- 「iOSプラットフォーム」プリファレンス・ページ(図27-26を参照)で、`Automatically Add to iTunes`ディレクトリの場所を入力します。

  ヒント: この場所を入力する前に、iTunesを1回以上実行します。第27.4.2項「iOSデバイスへのアプリケーションのデプロイ方法」を参照してください。

- 実際のiOSデバイス上でアプリケーションをテストします。第27.4.2項「iOSデバイスへのアプリケーションのデプロイ方法」を参照してください。

- iOS Provisioning Portalを通して配布証明書を取得します。

  注意: 配布証明書を作成できるのは、チーム・エージェントのみです。

- `.ipa`ファイルをiTunesに配布するための、iTunes Connectアカウントを取得します。詳細は、iOS Development CenterのApp Store Resource Centerにある『Prepare App Submission』を参照してください。具体的には、『App Store Review Guidelines』を確認して、App Review Teamに確実に受け入れられるようにしてください。

- 『iTunes Connect Developer Guide』を確認することをお薦めします。どちらのガイドも、iOS Developer Library (`http://developer.apple.com/library/ios/navigation/`)から入手できます。

- デプロイメント・プロファイルの「iOSオプション」ページで、ビルド・モードとして『App Distribution Guide』「リリース」を選択し、「OK」をクリックします。

iOSアプリケーションをApp Storeに配布するには:

1. 「アプリケーション」→「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。

2. 「配布パッケージにデプロイ」を選択します。

3. 「サマリー」ページをレビューします。このページには、次の値が表示されます。「終了」をクリックします。

   - アプリケーション・バンドルID: iOS Provisioning Portalから生成されたバンドル・シードが先頭に付加されたJava言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

   - ファイル: iOSターゲットにデプロイされる最終イメージのファイル名。

   - シグネチャ: アプリケーションの作成者。デプロイメント・プロファイルの「iOSプラットフォーム」プリファレンス・ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   - プロビジョニング・プロファイル: 1つ以上の開発用証明書とデバイスをアプリケーションIDと関連付けるプロビジョニング・プロファイルの名前。「iOSプラットフォーム」プリファレンス・ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。

   注意: `.ipa`ファイルがiTunesで受け入れられるようにするには、「オプション」ページで「シグネチャ」と「プロビジョニング・プロファイル」の値を指定する必要があります。

4. iTunes Connectにログインします。

5. 『iTunes Connect Developer Guide』の「Adding New Apps」と「Using Application Loader」の項で説明されているManage Your ApplicationsモジュールとApplication Loaderを使用して、検討用に`.ipa`ファイルをiTunes Connectに送信します。

6. アプリケーションが承認されたら、『iTunes Connect Developer Guide』の「Creating Test Users」の項でManage Usersモジュールの使用方法を参照してください。多言語アプリケーションをテストするには、アプリケーションのローカライズ対象地域のテスト・ユーザー・アカウントを作成します。

7. Managing Your Applicationモジュールを使用したバイナリの更新については、『iTunes Connect Developer Guide』の「Editing and Updating App Information」の項を参照してください。

## 27.5 機能アーカイブ・ファイル(FAR)のデプロイ

MAFのビュー・コントローラ・プロジェクトによる再利用を可能にするために、アプリケーション機能(一般的に、MAF AMXまたはローカルHTMLとして実装されるもの)は、機能アーカイブ(FAR)というアーカイブにバンドルされます。第8章「MAFアプリケーション・コンテンツの再使用」で説明しているように、FARは、モバイル・アプリケーションで使用できる、アプリケーション機能アーティファクト(アイコン・イメージ、リソース・バンドル、HTML、JavaScriptまたは他の実装固有のファイルなど)が含まれているJARファイルです。(FARには、Javaクラスを含めることも可能ですが、これらのクラスはコンパイルする必要があります。)例27-2は、1つの`maf-feature.xml`ファイルと1つの`connections.xml`ファイルを含むFARの内容を示しています。`connections.xml`の詳細は、Oracle Fusion Middleware Oracle Application Development FrameworkによるFusion Webアプリケーションの開発のconnections.xmlファイルに定義されている検索に関する項を参照してください。

例27-2 機能アーカイブ・ファイルの内容

    connections.xml (or some form of connection metadata)

      META-INF
         adfm.xml
         maf-feature.xml
         MANIFEST.MF
         task-flow-registry.xml

      oracle
        application1
          mobile
             Class1.class
             DataBindings.cpx
             pageDefs
               view1PageDefs

      model
         adfc-mobile-config.adfc.diagram
         ViewController-task-flow.adfc.diagram

      public_html
         adfc-mobile-config.xml
           index.html
           navbar-icon.html
           springboard-icon.html
         view1.amx
         ViewController-task-flow.xml

機能アーカイブ・ファイルでの作業には、次のタスクがあります。

1. 機能アーカイブ・ファイルの作成: 機能アプリケーションをライブラリJARファイルとしてデプロイすることで機能アーカイブを作成します。

2. モバイル・アプリケーション作成時の機能アーカイブ・ファイルの使用: これにはFARのインポートと、インポートされた接続の再マッピングが含まれます。

3. FARの機能を含むモバイル・アプリケーションのデプロイ: これには、デプロイメント・テンプレート内の一意の名前が付けられたフォルダへのFARの解凍が含まれます。

   注意: デプロイメント・プロセス時に、MAFによってFARが生成されます。別のアプリケーションでこのFARを使用する場合は、ビュー・コントローラ・プロジェクトのみをデプロイすればすみます。

### 27.5.1 機能アーカイブのデプロイメント・プロファイルの作成方法

「デプロイメント・プロファイルの作成」ダイアログを使用します(図27-29を参照)。

図27-29 MAF機能アーカイブ・ダイアログの作成

始める前に

アプリケーションの適切な接続を作成します。FARは接続要件が異なる様々なMAFアプリケーションで使用できるため、接続ソースまたは実際に標準化された接続名を表す接続名を選択します。

機能アーカイブのデプロイメント・プロファイルを作成するには:

1. ビュー・コントローラ・プロジェクトを右クリックし、「新規」→「デプロイ」→「新規デプロイメント・プロファイル」を選択します。

   注意: アプリケーションレベルの別個のデプロイメント・プロファイルを作成する必要はありません。

2. 「デプロイメント・プロファイルの作成」ダイアログで「MAF機能アーカイブ」を選択します。

3. プロファイル名を入力するか、デフォルトを受け入れて、「OK」をクリックします。

   注意: プロファイルには適切な名前を付けてください。そうしないと、アーカイブ名が同じアプリケーション機能を複数アップロードしたときに、問題が発生する可能性があります。詳細は、第8.5項「機能アーカイブ・リソースの再使用の有効化に関する必知事項」を参照してください。

4. 機能アーカイブJARファイルに含める接続を選択します(図27-30を参照)。

   図27-30 FARの接続の選択

5. 「次へ」をクリックしてオプションをレビューし、「終了」をクリックします。

### 27.5.2 機能アーカイブのデプロイメント・プロファイルのデプロイ方法

「デプロイメント・アクション」ダイアログでは、FARをJARファイルとしてデプロイできます。図27-31に示すこのダイアログには、「機能アーカイブJARファイルへデプロイします。」という1つのデプロイメント・オプションのみがあります。

図27-31 デプロイメント・アクション

機能アーカイブのデプロイメント・プロファイルをデプロイするには:

1. ビュー・コントローラ・プロジェクトを右クリックして、機能アーカイブのデプロイメント・プロファイルを選択します。

2. 「終了」をクリックします。「サマリー」ページ(図27-32を参照)に、機能アーカイブ・ファイルのJARパスがデプロイされるフルパスが表示されます。

   図27-32 デプロイメントの「サマリー」ページ

### 27.5.3 機能アーカイブ・ファイルのデプロイメント・プロファイルをデプロイする場合の処理

「デプロイメント・アクション」ダイアログを完了すると、MAFによって、「サマリー」ページに示されたパスにライブラリJARが作成されます。他のアプリケーションでこのJARを使用できるようにするには、最初に、図27-33に示す「リソース・パレット」(第8.2項「MAFアプリケーションでのFARコンテンツの使用方法」で説明)で機能アーカイブJARの場所への接続を作成することでこれを利用可能にする必要があります。図27-33は、ファイル・システム接続によりモバイル・アプリケーション使用可能となる機能アーカイブを示します。

図27-33 「リソース・パレット」のデプロイされた機能アーカイブJAR

## 27.6 モバイル・アプリケーション・アーカイブ・ファイルの作成

新しいモバイル・アプリケーションを既存のモバイル・アプリケーションから作成するには、まず元のモバイル・アプリケーションをモバイル・アプリケーション・アーカイブ(`.maa`)ファイルとしてパッケージ化した後、このファイルから新しいモバイル・アプリケーションを導出します。`.maa`ファイルは、サード・パーティによる使用が可能です(第27.7項「署名されていないデプロイメント・パッケージの作成」を参照)。

`.maa`ファイルによって、モバイル・アプリケーションの構造が保持されます。表27-4に、このファイルの内容を示します。

表27-4 モバイル・アプリケーション・アーカイブ・ファイルの内容

ディレクトリ | 説明
--- | ---
`adf` | 次のようなメタデータ・ファイルを含む`META-INF`ディレクトリが格納されます。 `adf-config.xml`ファイル `maf-application.xml`ファイル `maf-config.xml`ファイル その他の該当するアプリケーション・レベルのファイル(`connections.xml`ファイルなど)
`Projects` | ワークスペース内の各プロジェクトに対応するJARファイルが格納されます。たとえば、デフォルトのモバイル・アプリケーションを`.maa`ファイルにデプロイすると、`ViewController.jar`ファイルと`ApplicationController.jar`ファイルはこのディレクトリに配置されます。`.maa`ファイルの`Projects`ディレクトリには、元のプロジェクトの`.java`ファイルは格納されません。かわりに、`.java`ファイルはコンパイルされ、その結果生成された`.class`ファイルが、プロジェクトJARファイル(`ApplicationController.JAR/classlib/mobileApplicationArchive.jar`など)に含まれる別のJARファイル内に配置されます。
`ExternalLibs` | 元のモバイル・アプリケーションの外部にあるアプリケーション・レベルのライブラリ(FARを含む)が格納されます。
`META-INF` | `maf.properties`および`logging.properties`ファイルが格納されます。
`resources` | 次のディレクトリが含まれます。 `android`: アプリケーション・アイコンやスプラッシュ画面に使用される、Android固有のイメージ・ファイルが格納されます。 `ios`: アプリケーション・アイコンやスプラッシュ画面に使用される、iOS固有のイメージ・ファイルが格納されます。 security: `cacerts`ファイル(キーストア・ファイル)が格納されます。

表27-4にリストされたアーティファクトに加えて、`.maa`ファイルには、元のモバイル・アプリケーションの内部にあるFARまたはJARファイル、およびその制御(`.jws`)ファイルが格納されたフォルダが含まれます。第27.7.2項「MAFアプリケーション・アーカイブ・ファイルのインポート時に行われる処理」も参照してください。

### 27.6.1 モバイル・アプリケーション・アーカイブ・ファイルの作成方法

モバイル・アプリケーションの作成後、JDeveloperによって、デフォルトのMAFアプリケーション・アーカイブ・デプロイメント・プロファイルが作成されます。モバイル・アプリケーション・アーカイブ・ウィザードを使用すると、`.maa`ファイルを作成できます。

ヒント: また、OJDeployを使用して`.maa`ファイルを作成することもできます(第27.8項「コマンド行からのMAFアプリケーションのデプロイ」を参照)。

モバイル・アプリケーション・アーカイブ・ファイルを作成するには:

1. 「アプリケーション」→「デプロイ」→「新規デプロイメント・プロファイル」をクリックします。

2. 「デプロイメント・プロファイルの作成」ダイアログで、「MAFアプリケーション・アーカイブ」→「OK」をクリックします(図27-34を参照)。

   図27-34 MAAデプロイメント・プロファイルの作成

3. 必要に応じて、「アプリケーション・アーカイブ・オプション」ページでモバイル・アプリケーション・アーカイブの名前を入力する(図27-35を参照)か、デフォルトの名前(およびパス)をそのまま使用します。「OK」をクリックします。

   図27-35 モバイル・アプリケーション・アーカイブ・ファイルの名前とパスの入力

4. 必要に応じて、次を実行します。

   1. 「アプリケーション・ディスクリプタ」ページ(図27-36を参照)で、`META-INF`フォルダ(`application_workspace\src\META-INF`)の内容に付けるファイル・グループ名を入力します(またはデフォルトの名前をそのまま使用します)。

      図27-36 META-INFの内容に付けるファイル・グループ名の入力

   2. この「アプリケーション・ディスクリプタ」ページの「コントリビュータ」サブページを選択して、ファイル・グループの内容を提供するディレクトリとJARファイルのリストを編集します。

      図27-37 モバイル・アプリケーション・アーカイブ・ファイルへのコントリビュータの編集

   3. 「フィルタ」ページ(図27-38を参照)を使用して、`.maa`ファイルに含めるファイルを編集したり、コンテンツの組込みまたは除外ルールを設定したりします。

      図27-38 ファイルとディレクトリの組込み(または除外)

   4. 「プロファイルの依存性」ページ(図27-39を参照)を使用して、プロジェクト内の依存プロファイルを指定します。

      図27-39 デプロイメント・プロファイルの選択

モバイル・アプリケーションをMAFアプリケーション・アーカイブ・ファイルとしてパッケージ化するには:

1. 「アプリケーション」→「デプロイ」を選択し、「MAFアプリケーション・アーカイブ」デプロイメント・プロファイルを選択します。

2. 「デプロイメント・アクション」ウィザードで、「アプリケーションのMAAへのデプロイ」を選択します(図27-40を参照)。

   図27-40 MAFアプリケーション・アーカイブ・ファイルへのデプロイメント

3. 「次へ」をクリックして、デプロイメント・サマリーを確認します(図27-41を参照)。

   図27-41 MAFアプリケーション・アーカイブのデプロイメント・サマリー

4. 「終了」をクリックします。

## 27.7 署名されていないデプロイメント・パッケージの作成

MAFアプリケーション・アーカイブ(`.maa`)・ファイル形式を使用すると、署名されていないモバイル・アプリケーションをサード・パーティに提供できます。インポートした`.maa`ファイルからモバイル・アプリケーションを導出することによって、次のような様々なカスタマイズが可能になります。

- アプリケーションへの一意のアプリケーションIDの付与(プッシュ通知を有効にする場合など)。

- 企業固有の資格証明または証明書を使用した、アプリケーションへの署名。

- カスタマイズされたスプラッシュ画面とアプリケーション・アイコンによる、リソースの置換え。

注意: `.maa`ファイルを既存のアプリケーションにインポートすると、ワークスペースとプロジェクトのコンテナ・ファイル(それぞれ`.jws`ファイルと`.jpr`ファイル)が上書きされます。このため、MAF AMXページと構成ファイル(`maf-application.xml`、`maf-config.xml`、`connections.xml`、`adf-config.xml`など)に対して以前加えた変更の一部は保持されません。

### 27.7.1 署名されていないアプリケーションの作成方法

署名されていないアプリケーションを作成するには、`.maa`ファイルを新しいモバイル・アプリケーションにインポートします。

署名されていないアプリケーションを作成するには:

1. 「ファイル」を選択し、「新規」を選択します。

2. 「新規ギャラリ」で、「アプリケーション」→「アーカイブ・ファイルからのMAFアプリケーション」を選択します。

   注意: または、「ファイル」→「インポート」→「アーカイブ・ファイルからのMAFアプリケーション」を選択します。

3. 「場所」ページで、「MAAファイル」フィールドの「参照」を選択します。

4. 「インポートするMAAファイルの選択」ページで、`.maa`ファイルを強調表示し(図27-42を参照)、「開く」をクリックします。

   図27-42 .maaファイルの選択

5. 必要に応じて、次を実行するか、デフォルト値をそのまま使用します。

   1. `.maa`ファイルから導出したモバイル・アプリケーションの名前を「アプリケーション・ファイル」フィールドに入力します(図27-43を参照)。

   2. 「参照」をクリックして、モバイル・アプリケーションのディレクトリを取得します。

   図27-43 ディレクトリの場所の入力

6. 「次へ」をクリックします。

7. インポートのサマリー情報を確認し、「終了」をクリックします。

   図27-44 MAFアプリケーション・アーカイブの内容のサマリー

### 27.7.2 MAFアプリケーション・アーカイブ・ファイルのインポート時に行われる処理

MAFでは、`.maa`ファイルがインポートされた後、次を実行します。

1. アプリケーション・フォルダを作成します。

2. ワークスペース・コンテナ(`.jws`)・ファイルを`.maa`ファイルからアプリケーション・ファイルに解凍し、ユーザー指定の値に従ってその名前を変更します。

3. `adf`ディレクトリとその内容をアプリケーション・フォルダに解凍します。このディレクトリの名前は、`.adf`に変更されます。

4. `META-INF`ディレクトリとその内容をアプリケーション・フォルダに解凍し、アプリケーション・フォルダの`src`ディレクトリ内に配置します。

5. `ExternalLibs`ディレクトリとその内容をアプリケーション・フォルダに解凍します。

   注意: このディレクトリに格納された外部リソースはすべて、`.maa`ファイルとしてパッケージ化された(そしてアプリケーションにインポートされた)モバイル・アプリケーション内で使用できますが、これらのリソースへの参照は、`.maa`ファイルから導出されたモバイル・アプリケーションに対しては無効になります。

6. `resources`ディレクトリをアプリケーション・フォルダに解凍します。

7. 元のモバイル・アプリケーションの内部にあるFAR (またはその他のライブラリ)を含む、すべてのフォルダを解凍します。MAFによって、これらのアーティファクトの元の場所が保持されます。

8. MAFでは、元のモバイル・アプリケーションの`Projects`ディレクトリ内にあるJARファイルごとに、次を実行します。

   - JARファイルの名前(`.jar`拡張子を除く)に対応するアプリケーション・ディレクトリの下に、プロジェクト・フォルダを作成します。

   - JARファイルの内容を、適切なプロジェクト・フォルダ内に解凍します。MAFによって、これらのプロジェクト・フォルダ内に次のものが格納されます。

     - 元の`.jpr`ファイル。

     - `META-INF`、`public_html`、`src`、`adfmsrc`などの標準的なディレクトリ。

     - `ExternalLibs`ディレクトリの内容。

       注意: このディレクトリに格納された外部リソースはすべて、インポート済の`.maa`ファイルを使用してパッケージ化されたMAFプロジェクト内で使用できますが、これらのリソースへの参照は、既存のプロジェクト、または`.maa`ファイルをインポートすることによって作成されたプロジェクトに対しては無効になります。

     - JARファイル内にパッケージ化されたすべてのJavaクラスを含む`classlib`ディレクトリ。

       注意: `.maa`ファイルに`classlib`ディレクトリが含まれている場合、MAFでは、このディレクトリのすべてのJARファイルを、新しく作成されたモバイル・アプリケーションにライブラリ依存性として追加します。

## 27.8 コマンド行からのMAFアプリケーションのデプロイ

JDeveloper IDEを起動しなくても、OJDeployコマンド行ツールを使用して、JDeveloperからiOSまたはAndroidアプリケーションをデプロイできます。コマンド行のデプロイメントは、テストのためのツールとして機能すると同時に、スクリプトを使用したアプリケーションのデプロイ方法として機能します。

デプロイメント・プロファイルのプロパティ・エディタを使用してiOSまたはAndroidデプロイメント・ファイルを作成したら、OJDeployを使用してiOSシミュレータと(iTunes経由で)iOSデバイスに、またはiOSバンドル(`.ipa`および`.app`ファイル)として、あるいは機能アーカイブJARファイルとして、ヘッドレス・モードでアプリケーションをデプロイできます。同様に、OJDeployを使用すると、AndroidエミュレータとAndroidデバイスの両方に、またはAndroidアプリケーション・パッケージ(`.apk`)・ファイルとして、あるいは機能アーカイブJARファイルとして、アプリケーションをデプロイできます。OJDeployの詳細は、『Oracle Fusion Middleware Oracle JDeveloperユーザーズ・ガイド』のコマンドラインからのデプロイに関する項を参照してください。

注意: OJDeployをMac上で使用するには、次の行を`ojdeploy.conf`ファイルに追加してください。 `SetSkipJ2SDKCheck true` このファイルは`jdev_install``/jdeveloper/jdev/bin`にあります。

### 27.8.1 OJDeployを使用したモバイル・アプリケーションのデプロイ

次のコマンドを使用して、MAFのデプロイメント・プロファイルをデプロイできます。

- `deployToDevice`: iOSデバイスまたはAndroidデバイスにアプリケーションをデプロイします。iOSアプリケーションの場合、このコマンドは、iTunesを使用してアプリケーションがデバイスにデプロイされるデバッグ・シナリオで使用されます。詳細は、第27.4.5項「App StoreへのiOSアプリケーションの配布方法」を参照してください。

- `deployToSimulator`: アプリケーションをiOSシミュレータに(`.app`ファイルとして)デプロイするか、Androidエミュレータにデプロイします。モバイル・アプリケーションはAppleコンピュータ上のiOSシミュレータにのみデプロイできます。

- `deployToPackage`: iOSアプリケーションを`.ipa`ファイルとして、またはAndroidアプリケーションを`.apk`ファイルとしてデプロイします。アプリケーションは、Appleコンピュータでのみ、`.ipa`ファイルとしてパッケージ化できます。

- `deployToFeatureArchive`: 機能アーカイブをJARファイルにデプロイします。

- `deployToApplicationArchive`: モバイル・アプリケーションをMAFアプリケーション・アーカイブ・ファイル(`.maa`)としてパッケージ化します。

これらのコマンドは、`ojdeploy`コマンド行ツール、OJDeployの引数およびそのオプションとともに、次のように使用します。

    ojdeploy deployToSimulator -profile <profile name> -workspace <jws file location>

注意: OJDeployコマンドと引数では大文字と小文字が区別されます。

表27-5に、MAFのデプロイメント・コマンドを変更するために使用するOJDeploy引数をリストします。

ヒント: `-help`オプションを任意のコマンドで使用すると(例: `ojdeploy deployToSimulator -help`)、使用方法と構文に関する情報を取得できます。

表27-5 MAFのデプロイメント用のOJDeploy引数

引数 | 説明
--- | ---
`-profile` | AndroidまたはiOSデプロイメント・プロファイルの名前。次に例を示します。
    ojdeploy deployToSimulator -profile iosDeployProfile ...
`-workspace` | モバイル・アプリケーション・ワークスペースのコンテナ(`.jws`)・ファイルへのフルパス。次に例を示します。
    ... -workspace /usr/jsmith/mywork/Application1/Application1.jws
モバイル・アプリケーションをモバイル・アプリケーション・アーカイブとしてパッケージ化するには:
    ojdeploy deployToApplicationArchive
             -profile applicationArchiveProfile
             -workspace /usr/jdoe/Application1/application1.jws
`-project` | `deployToFeatureArchive`コマンドの場合は、機能アーカイブのデプロイメント・プロファイルを含むプロジェクト(ビュー・コントローラ・プロジェクト)の名前を指定する必要があります。次に例を示します。
    ojdeploy deployToFeatureArchive
             -profile farProfileName
             -project ViewController
             ...
`-buildfile` | バッチ・デプロイ用のビルド・ファイルへのフルパス。
`-buildfileschema` | ビルドファイルの出力XMLスキーマ。

表27-5にリストされた引数に加えて、『Oracle Fusion Middleware Oracle JDeveloperユーザーズ・ガイド』のコマンドの使用方法に関する項で説明されているOJDeployオプションも使用できます。

注意: 次のオプションはサポートされていません。 `-forcerewrite` `-nocompile` `-nodatasources` `-nodepdendents` `-outputfile` `-updatewebxmlejbrefs`

表27-6に、MAFのデプロイメント・コマンドでOJDeployオプションを使用する方法の例を示します。

表27-6 MAFのデプロイメント用のOJDeployオプション

オプション | 説明
--- | ---
`-clean` | コンパイルの前に、プロジェクト出力ディレクトリからすべてのファイルを削除します。次に例を示します。
    ojdeploy deployToSimulator
             -profile iosDeployProfile
             -workspace /usr/jsmith/jdeveloper/mywork/Application1.jws
             -clean
`-stdout, -stderr` | 標準出力とエラー・ロギングのストリームを、それぞれのプロファイルとプロジェクトのファイルにリダイレクトします。次に例を示します。
    ojdeploy deployToSimulator -profile iosDeployProfile
             -workspace /usr/jsmith/jdeveloper/mywork/Application1.jws
             -clean
             -stdout /usr/jsmith/stdout/stdout.log
             -stderr /usr/jsmith/stderr/stderr.log

表27-7は、`deployToApplicationArchive`コマンドとともに使用するマクロを示しています。

表27-7 MAFアプリケーション・アーカイブのパッケージ化に使用するマクロ

マクロ | 説明
--- | ---
`workspace.name` | アプリケーション・ワークスペースのコンテナ・ファイルの名前(`.jws`拡張子を除く)。
`workspace.dir` | アプリケーション・ワークスペースのコンテナ(`.jws`)・ファイルのディレクトリ。
`profile.name` | デプロイするプロファイルの名前。
`profile.dir` | プロファイルのデフォルトのデプロイメント・ディレクトリ。
`base.dir` | このパラメータを使用して、現在のojdeployディレクトリをオーバーライドします。ビルド・スクリプトでbasedir属性を使用して、現在のojdeployディレクトリをオーバーライドできます。

## 27.9 Oracle Mobile Security Suiteでのデプロイ

Oracle Mobile Security Suite (OMSS)は、モバイル・アプリケーション向けにエンタープライズレベルのセキュリティを備えています。アプリケーション・データおよびデータベースの内容の暗号化を提供し、データ漏えいを防止します。OMSS C14NツールはOracleサポートからダウンロードできます。

注意: 現在、iOSデバイスではOMSSのみが使用できます。

OMSSでは、デプロイ時にコンテナ化を使用してアプリケーション・コンテンツを暗号化します。iOS用デプロイメント・プロファイルのプロパティ・エディタでコンテナ化を有効にします(図27-46を参照)。第27.2.5.2項「デバイス署名オプションの設定」の説明に従って、プロビジョニング・プロファイルの名前と場所も指定する必要があります。

Oracle Mobile Security Suiteを使用してアプリケーションをコンテナ化する手順:

1. 「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択します。

2. コンテナ化を選択します。

3. JDeveloperプリファレンスで、コンテナ化(c14n)ツールの場所を指定します(図27-45を参照)。

   図27-45 コンテナ化ツールの場所の指定

4. 「参照」アイコンをクリックし、ローカル・ファイル・システムでOracle Mobile Security Appコンテナ化ツールの場所を探します。

5. 「OK」をクリックしてコンテナ化ツールを選択します。

6. 「アプリケーション」→「アプリケーション・プロパティ」→「デプロイメント」を選択します。

7. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。

8. iOS用デプロイメント・プロファイルのプロパティ・エディタの下部で、「Oracleモバイル・セキュリティ・スイートの有効化」を選択します(図27-46を参照)。

   図27-46 iOS用デプロイメント・プロファイルでのOMSSコンテナ化の選択

Oracle Mobile Security Suiteを使用してアプリケーションをデプロイする手順:

1. 「アプリケーション」→「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。

2. 「デプロイメント・アクション」ダイアログで、リストからiTunes (デバイス・デプロイ用)を選択します。

   注意: コンテナ化は、iTunesデプロイメントでのみサポートされています。配布パッケージまたはシミュレータへのデプロイメントでは、c14nツールを起動してコンテナ化されたIPAファイルを作成することはありません。

3. アプリケーションをiTunesにデプロイします。Oracle Mobile Security Suiteにより保護されたIPAファイルが作成されます。コンテナ化されたアプリケーションをデバイスに追加すると、そのアプリケーションにロック・アイコンが表示されます(図27-47を参照)。

図27-47 コンテナ化を表すロック・アイコンが表示されたモバイル・アプリケーション