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

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

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

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

エンド・ユーザーに配布するためにアプリケーションを公開する前に、デバイスまたは仮想デバイスでこれをテストして、その動作と使いやすさを評価する必要があります。MAFは、MAFアプリケーションのデプロイメントを容易にする、各プラットフォーム用のすぐに使用できるデプロイメント・プロファイルを提供しています。

すぐに使用できるデプロイメント・プロファイルを使用するか、または独自のデプロイメント・プロファイルを作成して、MAFアプリケーションをテストするデバイスまたは仮想デバイス(エミュレータまたはシミュレータ)にMAFアプリケーションをデプロイします。

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

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

新しいビルド・プロセスを開始するため、JDeveloperが以前のビルドからのアーティファクトと設定を削除するよう、アプリケーションをデプロイする前に複数のシナリオでJDeveloperの「ビルド」「すべてクリーン」コマンドを呼び出すことをお薦めします。これらのシナリオは次のとおりです。

  • ビルド・モード、アプリケーション名など、デプロイメント・プロファイルの設定の変更。

  • Cordovaプラグインの追加または削除。

  • Gradleプロキシ設定、Android SDKの場所、署名資格証明など、Androidプラットフォームのプリファレンスの変更。

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

MAFアプリケーション・デプロイメントの場合は、すぐに使用できるデプロイメント・プロファイルを作成するか、カスタマイズしたデプロイメント・プロファイルを使用します。デプロイメント・プロファイルでは、アプリケーションをアーカイブにパッケージ化する方法を定義します。プラットフォーム固有のデバイスや仮想デバイスに、このパッケージをデプロイします。

デプロイメント・プロファイルを使用して、MAFアプリケーションを実行するプラットフォームにMAFアプリケーションをデプロイします。MAFには、サポートしている各プラットフォーム(Android、iOS、Windows)用のすぐに使用できるデプロイメント・プロファイルが用意されていますが、カスタマイズしたデプロイメント・プロファイルを作成することもできます。デプロイメント・プロファイルでは、プラットフォーム・デバイス(AndroidデバイスやAndroidエミュレータなど)にデプロイするアプリケーションをアーカイブにパッケージ化する方法を定義します。デプロイメント・プロファイルは次を行います。

  • アーカイブの形式と内容を指定します。

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

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

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

MAFでは、プラットフォーム固有のデプロイメント・プロファイルに加えて、MAFアプリケーションをMAFアプリケーション・アーカイブ(.maa)・ファイルとしてパッケージ化するために使用できるデプロイメント・プロファイルも提供します。このファイルを使用すると、.maaファイルとしてパッケージ化された既存のアプリケーションを使用する新しいMAFアプリケーションを作成できます。このデプロイメント・ファイルには、MAFアプリケーション名に_archiveが続く形式の名前がデフォルトで付けられます。「モバイル・アプリケーション・アーカイブ・ファイルの作成」を参照してください。

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

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

図25-1 デフォルトのデプロイメント・プロファイル

図25-1の説明が続きます
「図25-1 デフォルトのデプロイメント・プロファイル」の説明

その後、次の図に示す「デプロイメント・アクション」ページを使用して、適切なデプロイメント・ターゲットを選択します。

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

図25-2の説明が続きます
「図25-2 デプロイメント・ターゲットの選択」の説明

各デプロイメント・プロファイルには、環境設定と構成に関する独自の要件があります。詳細は、次を参照してください。

これらのプロファイルには、デフォルト値をそのまま使用するか、「アプリケーション・プロパティ」ダイアログの「デプロイメント」ページでプロファイルを選択し、「編集」をクリックすることによって、それらの値を編集することもできます。デフォルトのAndroidアプリケーション・プロファイルの「Androidオプション」ページを図に示します。

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

図25-3の説明が続きます
「図25-3 デフォルトのデプロイメント・プロファイルの編集」の説明

MAFでは、アプリケーション・コントローラ・プロジェクトとビュー・コントローラ・プロジェクトは、別々の機能アーカイブ(FAR)ファイルとしてパッケージ化されます。MAFファイルのこれらのJARファイルは他のアプリケーションのリソースとして使用され、それは「機能アーカイブ・ファイル(FAR)のデプロイ」で説明されています。次の図に示すように、「アプリケーションのプロパティ」ダイアログのプロファイルの依存性ページを使用して、FARを含めたり除外したりできます。

注意:

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

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

図25-4の説明が続きます
「図25-4 MAFプロジェクトからのFARコンテンツの編集」の説明

次の図に示すように、「プロジェクト・プロパティ」ダイアログのファイル・グループに関連するページを使用すると、ビュー・コントローラのFARファイルに含まれるコンテンツをカスタマイズできます。「プロジェクト・プロパティ」ダイアログの詳細は、Oracle JDeveloperのオンライン・ヘルプおよび『Oracle JDeveloperによるアプリケーションの開発』デプロイメント・プロファイルの構成に関する項を参照してください。

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

図25-5の説明が続きます
「図25-5 ビュー・コントローラ・プロジェクトのFARの編集」の説明

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

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

モバイル・アプリケーションを作成すると、MAFによって、デプロイメント・プロファイルのセットが作成されます。これらのプロファイルを使用してアプリケーションをデプロイしたり、それらのプロファイルを編集したり、MAF固有のデプロイメント・プロファイル・ページを使用して新しいプロファイルを構成できます。

デプロイメント・プロファイルの作成ウィザード(図25-6を参照)を使用して、それらのページからデフォルトのデプロイメント・プロファイルを作成できます。デプロイメント・プロファイルは、必要な数だけ作成できます。これらの標準デプロイメント・プロファイル・ページの詳細は、「ヘルプ」をクリックしてJDeveloperオンライン・ヘルプを参照してください。

注意:

MAFアプリケーションのデプロイメントでは、アプリケーションレベルのデプロイメント・プロファイルを作成し、関連する依存関係を構成する必要があります。デフォルトのデプロイメント・プロファイルおよび関連する依存関係は、新しいMAFアプリケーションを作成したときにのみ自動的に作成されます。既存のMAFアプリケーションを新しいアプリケーションレベル・デプロイメント・プロファイルで更新した場合、またはアプリケーションレベル・デプロイメント・プロファイルをデプロイした場合、Jdeveloperによって関連するプロジェクトレベルFARデプロイメント・プロファイルは作成されず、また依存関係も設定されません。

始める前に:

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

ヒント:

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

デプロイメント・プロファイルを作成するには:

  1. 「アプリケーション」を選択して、「デプロイ」を選択します。
  2. 「新規デプロイメント・プロファイル」を選択します。
  3. ターゲットにするプラットフォームのプロファイルを「プロファイル・タイプ」ドロップダウン・リストから選択します。

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

    図25-6の説明が続きます
    「図25-6 「デプロイメント・プロファイルの作成」ウィザード」の説明
  4. プロファイルのデフォルト名をそのまま使用するか、新しい名前を入力します。「OK」をクリックします。
  5. 必要な場合は、「オプション」ページと「アプリケーション・イメージ」ページを適宜使用して、「OK」をクリックします。

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

「デプロイメント・プロファイルの作成」ウィザードが完了すると、JDeveloperによってデプロイメント・プロファイルが作成され、デプロイメント・プロファイルのプロパティ・エディタが開きます。アプリケーションがデプロイされると、JDeveloperによって、デプロイメント・ディレクトリ、関連するサブディレクトリ、およびアプリケーションレベル・プロファイルへの依存関係として指定されたプロジェクトレベルFARファイルが作成されます。

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

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

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

ページ 機能

iOSオプション

iOSデバイスまたはiOSシミュレータにデプロイされるアプリケーションの設定を変更できます。

Androidオプション

AndroidデバイスまたはAndroidエミュレータにデプロイされるアプリケーションの設定を変更できます。

Windowsオプション

ユニバーサルWindowsプラットフォームにデプロイされるアプリケーションの設定を変更できます。

アプリケーション・イメージ

適切なグラフィックス・ファイルを追加することで、アプリケーションにカスタム・アイコンを割り当てられます。

デバイスの向き

アプリケーションの表示をデバイスの特定の向きに制限できます。このページはiOSデプロイメント・プロファイルのみに使用されます。

注意:

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

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

注意:

既存のMAFアプリケーションを新しいアプリケーションレベル・デプロイメント・プロファイルで更新した場合、またはアプリケーションレベル・デプロイメント・プロファイルをデプロイした場合、自動的な変更は行われません。MAFでは、プロジェクト・デプロイメント・プロファイルの作成や、既存のアプリケーションの依存関係の管理は自動的には行われません。新しいアプリケーションレベル・プロファイルを使用して既存のアプリケーションをデプロイするには、新しく作成したアプリケーションレベル・デプロイメント・プロファイルを、新規または既存のプロジェクトレベル・デプロイメント・プロファイルを参照するように構成します。

AndroidプラットフォームへのMAFアプリケーションのデプロイ

MAFアプリケーションは、Androidデバイス、エミュレータ、またはAndroidデバイスやエミュレータにアプリケーションをインストールするのに使用するデプロイメント・パッケージにデプロイできます。

MAFには、Androidプラットフォームにデプロイするアプリケーション用に2つのビルド・モードが用意されています。開発サイクル中にアプリケーションをテストおよびデバッグする場合は、デバッグ・モードを使用します。リリースの準備が完了し、Google Playなどのアプリケーション・マーケットプレイスを介してエンド・ユーザーに公開できるアプリケーションをデプロイする場合は、リリース・モードを使用します。

MAFには、すぐに使用できるデプロイメント・プロファイル(Android1)が用意されており、これによってMAFアプリケーションがデプロイされます。このすぐに使用できるデプロイメント・プロファイルを使用するか、またはその他のデプロイメント・プロファイルを1つ以上作成して、MAFアプリケーションをAndroidプラットフォームにデプロイできます。デプロイメント・プロファイルを使用して、デバッグ・モードまたはリリース・モードでMAFアプリケーションをデプロイできます。

新しいデプロイメント・プロファイルを作成するか、既存のプロファイルを編集して、次のことを実行できます。

  • アプリケーション用に追加のライブラリおよびプロファイル依存性を指定します。

  • ビルド・モードをデバッグまたはリリースから選択します。

  • デプロイメントにCPUタイプ(ARM、x86またはその両方)を指定します

  • アプリケーション名、バージョンなどのオプションを指定します

  • アプリケーションがスプラッシュ画面でそのロゴをレンダリングするために使用するイメージ、およびユーザーのデバイスに表示されるアイコンを指定します。

  • Androidデバイスにインストールする場合、MAFアプリケーションの優先記憶域の場所を指定します。

  • MAFがMAFアプリケーションをビルドするために使用するGradleビルド・ツールのロギング・レベルを選択します。これらのログ・レベルの詳細は、Gradleのドキュメントを参照してください。

  • MAFアプリケーションが動作可能なAndroidの最小バージョンを決定する最小SDK APIレベルを指定します。

  • MAFアプリケーションでmultidexサポートを無効にします。デフォルトでは、MAFアプリケーションに複数のDalvik Executable (DEX)ファイルを含むことができるように、MAFではmultidexサポートが有効になります。Android開発者のWebサイトの「Configure Apps with Over 64K Methods」ページで説明されているサイズをアプリケーションが超えない場合に、このサポートを無効にできます。MAFアプリケーションのコンパイル失敗時にcom.android.dex.DexIndexOverflowExceptionを参照すると、アプリケーションが大きすぎるので、multidexサポートを有効にする必要があることが示される場合があります。

  • バックアップを無効化します。デフォルトでは、MAFアプリケーションはAndroidのバックアップおよびリストア・インフラストラクチャに関与します。バックアップの許可チェックボックスの選択を解除すると、アプリケーションのバックアップまたはリストアが実行されなくなり、解除していない場合はすべてのアプリケーション・データがadbによって保存されるシステム全体のバックアップによっても、バックアップまたはリストアは実行されません。

デプロイメント・プロファイルの編集方法または作成方法の詳細は、「デプロイメント・プロファイルでの作業」を参照してください。デプロイメント・プロファイルのダイアログで「ヘルプ」をクリックして、各ダイアログで実行できる個々のタスクに関する情報を表示します。

デプロイメント・プロファイルを使用してMAFアプリケーションをデプロイする前に、「ターゲット・プラットフォームに応じた開発環境の構成」および『Oracle Mobile Application Frameworkのインストール』「Androidプラットフォーム用の開発ツールの設定」の説明に従って、Android SDKをダウンロードし、MAFプリファレンスの「Androidプラットフォーム」ダイアログから参照します。

MAFはGradleを使用して、MAFアプリケーションをビルドし、Androidプラットフォームにデプロイします。初めてMAFアプリケーションをデプロイするときに、MAFはGradleをダウンロードしてインストールします。開発マシンが企業のファイアウォールで保護されている場合は、MAFが正常にGradleをダウンロード、インストールおよび構成できるように、Gradleプロキシ設定を構成します。「Gradleプロキシ設定の構成方法」を参照してください。

MAFアプリケーションの開発を終了したら、アプリケーション・マーケットプレイス(Google Playなど)に公開できます。アプリケーションを公開する前に、図に示すように、アプリケーションをデプロイするのに使用するデプロイメント・プロファイルのビルド・モードがリリース・モードであることを確認してください。JDeveloperの「アプリケーション」「アプリケーション・プロパティ」「デプロイメント」メニューから「Androidオプション」ダイアログにアクセスします。また、リリース・モードでデプロイするには、「AndroidプラットフォームにデプロイするMAFアプリケーションの署名方法」の説明に従って、アプリケーションを署名する必要があります。

アプリケーションのGoogle Playへの公開の詳細は、http://developer.android.com/tools/publishing/publishing_overview.htmlを参照してください。

図25-7 デプロイメント・プロファイル・プロパティのリリース・モード

図25-7の説明が続きます
「図25-7 デプロイメント・プロファイル・プロパティのリリース・モード」の説明

Gradleプロキシ設定の構成方法

コンピュータが企業ネットワーク内にある場合は、AndroidプラットフォームにデプロイするMAFアプリケーションをビルドするのに必要なGradleツールをMAFがダウンロードしてインストールできるよう、プロキシ設定を構成します。

Gradleプロキシ設定を構成する手順:

  1. JDeveloperで「ツール」「プリファレンス」「モバイル・アプリケーション・フレームワーク」「Androidプラットフォーム」「Gradleプロキシ設定」をクリックし、ダイアログを開きます。

    図25-8 Gradleプロキシ設定

    図25-8の説明が続きます
    「図25-8 Gradleプロキシ設定」の説明
  2. 必要に応じて、ダイアログの「HTTPプロキシ」および「HTTPSプロキシ」セクションのフィールドへの入力を行います。

    • ホスト名: プロキシ・サーバーのURIを入力します。

    • ポート番号: プロキシ・サーバーが使用するポート番号を入力します。

    • プロキシを使用しない: 無視するURIの|区切りリストを入力します。たとえば、「*.nonproxyrepos.com|*.oracle.com|localhost」と入力します。

    • プロキシ認証: プロキシ・サーバーに認証が必要な場合に選択し、「ログイン」および「パスワード」フィールドにこれらの資格証明を入力します。

    • HTTPSプロキシを有効にする: HTTPSプロキシ・サーバーの詳細(ホスト名、ポート番号など)を指定する必要がある場合に選択します。これにより、以降の入力フィールドが書込み可能になります。

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

AndroidプラットフォームにデプロイするMAFアプリケーションの署名方法

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

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

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

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

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

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

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

  2. 「Androidプラットフォーム」を選択し、「署名資格証明」セクションの「キー」および「キーストア・パスワード」フィールドに、デバッグ・デプロイメントに必要なキーストア・ファイルとキーを作成するためにデプロイメントで使用されるパスワードを入力します。Androidデバイスまたはエミュレータへのデプロイメント用のキーストアとキーファイルを生成するこのパスワードには、6文字以上の長さであれば、任意の値を指定できます。デフォルトのパスワードはAndroidです。

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

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

  2. 「Androidプラットフォーム」→「リリース」タブを選択し、次を定義します。

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

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

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

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

      ヒント:

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

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

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

MAFは、キーおよびキーストアのパスワードをファイルベースの資格証明ストア(cwallet.sso)に格納します。資格証明の格納および取得を管理するこのファイルは、ユーザーのJDeveloperシステム・フォルダのo.mafフォルダ内に存在します。

たとえば、cwallet.ssoファイルはWindows環境では、C:\Users\jsmith\AppData\Roaming\JDeveloper\system12.2.1.0.42.170530.0315\o.maf.2.4.2.0.42.170930.0315にあります。

『Oracle Fusion Middlewareの管理』Oracle Walletの概要に関する項を参照してください。

注意:

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

AndroidプラットフォームへのMAFアプリケーションのデプロイ方法

Androidプラットフォーム用のMAFデプロイメント・プロファイルを使用して、Androidプラットフォームにアプリケーションをデプロイします。

MAFアプリケーションをUWPAndroidプラットフォームにデプロイする手順:

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

  2. 表示されるダイアログのリストから適切なデプロイメント・オプションを選択します。

    • アプリケーションのデバイスへのデプロイ

      Androidデバイスに直接デプロイするこのオプションを選択する前に、JDeveloperをホストする開発コンピュータにデバイスを接続し、そのデバイスを開発モードに設定して、USBデバッグを有効にします。これらのタスクの詳細は、『Oracle Mobile Application Frameworkのインストール』Androidデバイスを設定して開発マシンからアプリケーションをインストールする方法に関する項を参照してください。

    • アプリケーションのエミュレータへのデプロイ

      Androidエミュレータに直接デプロイするこのオプションを選択する前に、Androidエミュレータを設定して起動します。このタスクの詳細は、『Oracle Mobile Application Frameworkのインストール』Androidプラットフォーム用の開発ツールの設定に関する項を参照してください。

    • アプリケーションのパッケージへのデプロイ

      Androidデバイスまたはエミュレータへのインストール用に配布可能な.APKファイルにMAFアプリケーションをデプロイします。

  3. 「サマリー」ページを確認し、「終了」をクリックします。

AndroidプラットフォームにMAFアプリケーションをデプロイする場合の処理

MAFは、デバイスまたはエミュレータのいずれかのデプロイメント・オプションが選択された場合にこれらにMAFアプリケーションをインストールするのに使用する.APKファイルを生成します。「アプリケーションのパッケージへのデプロイ」オプションを選択した場合、MAFが.APKファイルを作成したディレクトリに移動して検索してください。

MAFによって、.APKファイルに次のものが格納されます。

  • adfmsrcの内容

  • .adfフォルダの内容

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

  • logging.propertiesファイル

  • JVMファイル

デバイスまたはエミュレータへのデプロイが選択された場合、MAFはMAFアプリケーションをインストールして起動します。MAFアプリケーションをデバッグ・モードでデプロイした場合は、図の左上に示すように、MAFアプリケーションの各画面に赤いアイコンが表示されます。リリース・モードでデプロイしたMAFアプリケーションでは、このアイコンはレンダリングされません。

図25-9 デバッグ・モードでデプロイされたMAFアプリケーション

図25-9の説明が続きます
「図25-9 デバッグ・モードでデプロイされたMAFアプリケーション」の説明

MAFは、Androidデバッグ・ブリッジを使用して、MAFアプリケーションをデプロイするデバイスまたはエミュレータに接続します。デプロイメントでデバイスが検出されない場合は、デバイス(デバイスにデプロイする場合)またはエミュレータ(Androidエミュレータにデプロイする場合)が検出されるまで、Androidデバッグ・ブリッジ・サーバーが5回再起動されます。どちらも検出されない場合、次の図に示すように、デプロイメント・プロセスは終了します。

図25-10 終了されたデプロイメント

図25-10の説明が続きます
「図25-10 終了されたデプロイメント」の説明

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

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

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

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

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

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

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

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

様々なサイズや解像度のAndroidデバイスでMAFアプリケーション・アイコンを正しく表示できるようにするには、同じイメージの低、中、高、超高、超超高密度および超超超高密度バージョンが必要です。MAFは、これらの表示要件を満たすデフォルトのOracleイメージを提供します。

ただし、アプリケーションにカスタム・アイコンが必要な場合は、次の図に示すように、「アプリケーション・イメージ」ページを使用してアプリケーション・アイコンとスプラッシュ画面用にPNG形式のイメージを選択することで、デフォルト・イメージをオーバーライドできます。スプラッシュ画面には、縦向きと横向きのイメージを追加できます。カスタム・イメージ・ファイルを追加しない場合は、デフォルトのOracleアイコンが使用されます。MAFでは、Androidのデフォルトのスプラッシュ・スクリーン用に9-patchイメージが提供されています。9-patchイメージは、イメージのどのエリアが拡張され、どのエリアが拡張されないかを示します。これらのイメージは、イメージ内の指定された部分(デフォルトのMAFスプラッシュ・スクリーンのイメージ内のロゴや著作権表示など)の整合性を維持しながら、任意のサイズに合うように拡張できます。

カスタム・イメージを作成するには、Android開発者のWebサイト(http://developer.android.com/design/style/iconography.html)で入手可能なドキュメント『Iconography』を参照してください。

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

図25-11の説明が続きます
「図25-11 Androidアプリケーション用のカスタム・イメージの設定」の説明

始める前に:

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

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

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

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

デプロイメントの際、MAFにより、JDeveloperは、ソースの場所から一時デプロイメント・フォルダにイメージをコピーできます。

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

表25-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-xxhdpi-icon.png

drawable-xxhdpi\adfmf_icon.png

display-xxxhdpi-icon.png

drawable-xxxhdpi\adfmf_icon.png

display-port-ldpi-splashscreen.9.png

drawable-port-ldpi\adfmf_loading.9.png

display-port-mdpi-splashscreen.9.png

drawable-port-mdpi\adfmf_loading.9.png

display-port-hdpi-splashscreen.9.png

drawable-port-hdpi\adfmf_loading.9.png

display-port-xhdpi-splashscreen.9.png

drawable-port-xhdpi\adfmf_loading.9.png

display-port-xxhdpi-splashscreen.9.png

drawable-port-xxhdpi\adfmf_loading.9.png

display-land-ldpi-splashscreen.9.png

drawable-land-ldpi\adfmf_loading.9.png

display-land-mdpi-splashscreen.9.png

drawable-land-mdpi\adfmf_loading.9.png

display-land-hdpi-splashscreen.9.png

drawable-land-hdpi\adfmf_loading.9.png

display-land-xhdpi-splashscreen.9.png

drawable-land-xhdpi\adfmf_loading.9.png

display-land-xxhdpi-splashscreen.9.png

drawable-land-xxhdpi\adfmf_loading.9.png

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

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

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

iOSアプリケーションはAppleコンピュータからのみデプロイできます。iOSシミュレータへのデプロイメントには、iOS Developer ProgramまたはiOS Developer Enterprise Programへのメンバーシップが不要です。Apple開発者としての登録で十分です。iOSデバイスへのデプロイメントに必要なiOS開発者プログラム(「iOSデバイスへのアプリケーションのデプロイ方法」「App StoreへのiOSアプリケーションの配布方法」で説明されています)の詳細は、https://developer.apple.com/programs/を参照してください。

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

図25-12の説明が続きます
「図25-12 「デプロイメント・アクション」ダイアログ(iOSアプリケーション用)」の説明

ヒント:

「コマンド行からのMAFアプリケーションのデプロイ」で説明されているように、「デプロイメント・アクション」ダイアログのかわりに、OJDeployコマンド行ツールを使用してモバイル・アプリケーションをiOSプラットフォームに手動でデプロイすることもできます。

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

デプロイメント・プロファイルのプロパティ・ダイアログを使用して、iOSアプリケーションのビルド構成とアプリケーション・アイコンの場所を定義します。

始める前に:
  • JDeveloperも実行されているAppleコンピュータに、Xcodeをダウンロードします(Xcodeには、Xcode IDE、パフォーマンス分析ツール、iOSシミュレータおよびiOS SDKが含まれています)。アプリケーションのコンパイルに最低限必要なサポート対象のバージョンについては、Oracle Technology Network (http://www.oracle.com/technetwork/developer-tools/maf/documentation)で動作保証とサポートのマトリクスを参照してください。

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

  • 「デバイス署名オプションの設定」で説明されているように、モバイル・アプリケーションをiOSデバイスにデプロイする(iOSシミュレータへのデプロイメントではなく)には、プロビジョニング・プロファイルと証明書の両方を取得する必要があります。

デプロイメント・プロファイルを作成するには:

  1. 「アプリケーション」「アプリケーション・プロパティ」「デプロイメント」を選択します。
  2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。
  3. 「iOSオプション」を選択します。
  4. デフォルト値をそのまま使用するか、次を定義します。
    • バンドルID: 必要に応じて、使用するバンドルIDを入力します。アプリケーション・バンドルIDは、iOSデバイスにインストールされた各アプリケーションに対して一意であることと、リバースパッケージ・スタイルの命名規則(つまり、com.<organization name>.<company name>)に従うことが必要です。詳細は、iOS Developer LibraryにあるApp Distribution Guideを参照してください。

      注意:

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

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

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

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

    • バージョン: MAFアプリケーションのリリース・バージョン番号を指定します。このバージョン番号は、エンド・ユーザーに表示され、アプリケーションのリリース済イテレーションを識別します。これは、3.1.2など、ピリオド区切りの負でない3つの整数で構成される文字列です。文字列は、数値(0-9)およびピリオド(.)文字のみを含んでいる必要があります。
      • 最初の整数は、MAFアプリケーションに対するメジャー・リビジョンを示し、新機能または主な変更に対して更新されます。

      • 2番目の整数は、あまり主要ではない機能を実装するリビジョンを表します。

      • 3番目の整数は、メンテナンス・リリース・リビジョンを表します。

    • ビルド: MAFアプリケーションのビルド番号を入力します。ビルドは、MAFアプリケーションのイテレーション(リリース済または非リリース済)を識別し、アプリケーションがiTunes Connectにアップロードされるたびに増加する必要があります。ビルド・バージョンは通常、3.1.2など、ピリオド区切りの負でない3つの整数で構成される文字列です。文字列は、数値(0-9)およびピリオド(.)文字のみを含んでいる必要があります。
      • 最初の数字は、最新のメジャー・リリースを表し、ゼロより大きい必要があります。整数は最大4桁の長さに制限されます。

      • 2番目の数字は、最新の重要なリビジョンを表し、最大2桁の長さに制限されます。

      • 3番目の数字は、最新の小さなバグ修正を表し、最大2桁の長さに制限されます。3番目の数字の値が0の場合、その数字および2番目のピリオドを省略できます。

        注意:

        各整数の先行のゼロは切り捨てられ、無視されます。たとえば、1.02.3は1.2.3に相当します。
    • 最小iOSバージョン: エンド・ユーザーがアプリケーションをデプロイできるiOSバージョンの中で、最も古いものを指定します。デフォルト値はMAFでサポートされる最も古いバージョンです。

    • シミュレータ: アプリケーションをデプロイする予定のシミュレータのハードウェアおよびiOSバージョンを選択します。ドロップダウン・リストに、デバイスIDとともに使用可能なバージョンが表示されます。詳細は、iOS Developer LibraryにあるSimulator User Guideを参照してください。

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

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

iOSビルド・オプションでは、デバッグまたはリリース・ビットとライブラリによりアプリケーションをデプロイできます。

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

  1. 「アプリケーション」「アプリケーション・プロパティ」「デプロイメント」を選択します。
  2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。
  3. 「iOSオプション」を選択します。
  4. 次のビルド・オプションから選択します。
    • プッシュ通知環境: デプロイしたアプリケーションが本番用Apple Push Notification Service (APNs)サーバーを使用する場合はProductionを選択します。また、開発用APNsサーバーを使用する場合はDevelopmentを選択します。プッシュ通知を有効化するPushPluginプラグインを選択していないと、MAFは、プッシュ通知環境の値を無視します。詳細は、「プッシュ通知の有効化」を参照してください。

    • アプリケーション・トランスポート・セキュリティの無効化 —アプリケーション・トランスポート・セキュリティ(ATS)は、アプリケーションからのネットワーク・リクエストを制限して、承認されたセキュア・トランスポート・プロトコルのみを使用するセキュリティ・ポリシーです。MAFではATSはデフォルトで有効になっています。「アプリケーション・トランスポート・セキュリティの無効化」を選択すると、ATSが無効な状態でMAFアプリケーションがデプロイされます。

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

    • リリース: デバッグ記号を使用せずに、リリース・ライブラリを使用してビルドをコンパイルする場合に選択します。

      ヒント:

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

    • その他のビルド引数 - XcodeでMAFアプリケーションをビルドするときに使用できる追加の引数を指定します。

MAFアプリケーションをデバッグ・モードでデプロイする場合は、図の左上に示すように、MAFアプリケーションの各画面に赤いアイコンが表示されます。リリース・モードでデプロイしたMAFアプリケーションでは、このアイコンはレンダリングされません。

図25-13 デバッグ・モードでデプロイされたMAFアプリケーション

図25-13の説明が続きます
「図25-13 デバッグ・モードでデプロイされたMAFアプリケーション」の説明
iOSアプリケーションへのカスタム・イメージの追加

「アプリケーション・イメージ」ページでは、指定したアプリケーション・アイコン、およびカスタム・イメージ付きのアートワークに使用されているデフォルトのOracleイメージをオーバーライドすることで、アプリケーションをリブランドできます。

様々なデバイスで使用されるカスタム・イメージの場所を入力する「アプリケーション・イメージ」ページを、次の図に示します。iOSアプリケーション・アイコン・イメージの詳細は、『iOS Human Interface Guidelines』のIcon and Image Designセクションを参照してください。このドキュメントはiOS Developer Libraryで入手できます。

注意:

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

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

  1. 「アプリケーション」「アプリケーション・プロパティ」「デプロイメント」を選択します。
  2. 「デプロイメント」ページで、iOSデプロイメント・プロファイルをダブルクリックします。
  3. iOS用デプロイメント・プロファイルのプロパティ・エディタの左側にあるツリーから、「iOSオプション」「アプリケーション・イメージ」を選択します。
  4. 「参照」を選択し、カスタム・マーケティング・アイコンを選択して、MAFによって提供されるデフォルトのマーケティング・アイコンをオーバーライドします。このイメージはすべてのアプリケーションに必要とされ、iPhoneアプリケーションとiPadアプリケーションのどちらも1024 x 1024ピクセルであることが必要です。
  5. 使用可能なイメージ・タイプをツリーに表示するデバイス・タイプを選択します。デフォルトでは、MAFはiPadおよびiPhoneデバイスで使用可能なすべてのイメージ・スタイルおよびイメージ・タイプを表示します。ただし、図に示すように、デバイス・タイプを選択して選択を絞り込むことができます。MAFは、「アイコン・フォルダ」 フィールドに、該当するイメージ・ファイルが格納されているアプリケーションのResourcesディレクトリ内の場所を表示します。

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

    図25-14の説明が続きます
    「図25-14 アプリケーション・イメージの選択」の説明
  6. ツリーからイメージ・タイプを選択します。
  7. 別のイメージを選択するには、「ファイル」フィールドで「参照」を選択します。このイメージ・ファイルは、現在のアプリケーション内に存在する必要があります。

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

  8. 「OK」をクリックします。
表示をデバイスの特定の向きに制限する方法

デフォルトでは、MAFアプリケーションは、iPhoneとiPadの両方ですべての向きをサポートしています。たとえば、iPads上で上下逆の縦向きでのみ表示する必要があるアプリケーションでは、アプリケーションの回転をこれらの向きのみに制限できます。

MAFアプリケーションがサポートするデバイスの向きを選択する、「デバイスの向き」ページを図に示します。

図25-15 デバイスの向きの選択

図25-15の説明が続きます
「図25-15 デバイスの向きの選択」の説明

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

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

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

    アイコン 説明
    このイメージは、iPadの縦向きのアイコンを示しています。

    iPad、縦: ホーム・ボタンは画面の下部。

    このイメージは、iPadの上下逆のアイコンを示しています。

    iPad、上下逆: ホーム・ボタンは画面の上部。

    このイメージは、iPadの横左のアイコンを示しています。

    iPad、横左: ホーム・ボタンは画面の左側。

    このイメージは、iPadの横右のアイコンを示しています。

    iPad、横右: ホーム・ボタンは画面の右側。

    このイメージは、iPhoneの縦向きのアイコンを示しています。

    iPhone、縦: ホーム・ボタンは画面の下部。

    このイメージは、iPhoneの上下逆のアイコンを示しています。

    iPhone、上下逆: ホーム・ボタンは画面の上部。

    このイメージは、iPhoneの横左のアイコンを示しています。

    iPhone、横左: ホーム・ボタンは画面の左側。

    このイメージは、iPhoneの横右のアイコンを示しています。

    iPhone、横右: ホーム・ボタンは画面の右側。

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

デバイス署名およびエクスポート・オプションの設定方法

iOSプラットフォームの「プリファレンス」ページには、開発コンピュータ上のプロビジョニング・プロファイルの場所、チームの識別子、署名アイデンティティの名前、およびエクスポート方法のためのフィールドが含まれています。

アプリケーションを配布パッケージにデプロイする場合、これらのパラメータを定義する必要があります。署名アイデンティティはアプリケーションのコード署名に使用します。証明書とその公開鍵はメンバー・センターに格納され、対応する署名アイデンティティ(公開鍵と秘密鍵を保持する証明書)は開発者のキー・チェーンに格納されます。この秘密鍵がないとコード署名できません。

注意:

アプリケーションをiOSシミュレータにデプロイする場合、署名アイデンティティ、プロビジョニング・プロファイルまたはエクスポート方法を指定する必要はありません。

デバイス署名およびエクスポート・オプションの設定手順:

  1. JDeveloperで、「プリファレンス」「モバイル・アプリケーション・フレームワーク」「iOSプラットフォーム」を選択します。
  2. 「プロビジョニング・プロファイル」ドロップダウン・リストから、アプリケーションに適切なプロビジョニング・プロファイルを選択します。
  3. 「チーム」フィールドに、チームの識別子を入力します。このフィールドには、手順2で選択したプロビジョニング・プロファイルからMAFによって抽出された値が自動的に移入されます。
  4. 「署名アイデンティティ」フィールドに、コードの作成者(開発者や会社など)を特定する開発者または配布証明書の名前を入力します。証明書の名前は、Keychain Accessユーティリティ(Applicationsフォルダからアクセス)を使用して表示できます。Keychain Accessユーティリティから名前全体をコピーしてください。このフィールドに入力された名前は、次の例のように表示されます。
    iPhone Developer: John Smith (Oracle123)

    図25-16 iOSプラットフォームの「プリファレンス」ページの「デバイス署名」および「エクスポート・オプション」セクション

    図25-16の説明が続きます
    「図25-16 iOSプラットフォームの「プリファレンス」ページの「デバイス署名」および「エクスポート・オプション」セクション」の説明
  5. 「メソッド」ドロップダウン・リストから、Xcodeがアプリケーションのアーカイブをエクスポートする方法を記述するオプションを選択します。
    • 非定型: 非定型のプロファイルのプロビジョニングを使用して、テストできるデバイスにアプリケーションを配布する場合。デバイスは開発者アカウントに登録されている必要があります。
    • アプリケーション・ストア: 配布プロビジョニング・プロファイルを使用して、Apple App Storeにアプリケーションを公開する場合。
    • 開発モード: 開発者プロビジョニング・プロファイルを使用して、デバッグのために開発者のアカウントの登録済デバイスにアプリケーションをデプロイする場合。
    • エンタープライズ: エンタープライズ・プロビジョニング・プロファイルを使用して、エンタープライズ内のアプリケーションを配布する場合。

注意:

プロビジョニング・プロファイルには、アプリケーションの開発バージョン用とリリース・バージョン用の両方があります。アプリケーションのリリース・バージョンに使用されるプロビジョニング・プロファイルは、あらゆるデバイスにインストールできます。一方、開発バージョン用のプロビジョニング・プロファイルは、IDがプロファイルに埋め込まれたデバイスのみにインストールできます。iOS Developer LibraryにあるApp Distribution Guideを参照してください。

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

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

始める前に:

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

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

    注意:

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

  • iOS Developer LibraryにあるSimulator User Guideを参照してください。iOSシミュレータはXcodeとともにインストールされます。

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

  1. 「アプリケーション」「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。
  2. 「アプリケーションのシミュレータへのデプロイ」をクリックしてから、「次へ」をクリックします。
  3. 「サマリー」ページをレビューします。このページには、次の値が表示されます。「終了」をクリックします。
    • アプリケーション・バンドルID: iOS Provisioning Portalから生成されたバンドル・シードが先頭に付加されたJava言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

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

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

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

    注意:

    iOSシミュレータへのデプロイメントでは、署名アイデンティティとプロビジョニング・プロファイルの値を定義する必要はありません。

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

「配布パッケージにデプロイ」オプションは、MAFアプリケーションを.ipaファイルにデプロイします。その.ipaファイルを使用して、アプリケーションをデバッグおよびテスト用のiOSデバイスにインストールできます。

iOSデバイスまたは配布サイトへのデプロイメントには、iOS Developer ProgramまたはiOS Developer Enterprise Programのメンバーシップが必要です。これらのプログラムの詳細は、https://developer.apple.com/programs/を参照してください。

iOSデバイスへのデプロイメントでは、iTunesのインストールが必要です(https://www.apple.com/itunes/download/を参照)。

始める前に:

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

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

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

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

    • アプリケーション・バンドルID: Java言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

    • ファイル: 最終イメージのファイル名。

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

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

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

  5. iTunesを開きます。

  6. 「配布パッケージにデプロイ」デプロイメント・アクションによって生成された.ipaファイルを見つけます。

  7. .ipaファイルをiTunesにドラッグし、左側の「デバイス」の下にリストされたiOSデバイスの名前の上にドロップします。

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

プロビジョニング・プロファイルは、iOSデバイスにアプリケーションをデプロイする前に、iOS Provisioning Portalを使用して作成しておく必要があります。

iOS Developer Programのメンバーのみがアクセス可能なiOS Provisioning Portalを使用して最初にプロビジョニング・プロファイルを作成しないかぎり、iOSアプリケーション(つまり、.ipaファイル)をiOSデバイスにデプロイしたり、App Storeまたは内部のホストされたダウンロード・サイトに公開することはできません。

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

ヒント:

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

図25-17 iOS Provisioning Portal

図25-17の説明が続きます
「図25-17 iOS Provisioning Portal」の説明
iOS開発用証明書の作成

iOS開発用証明書により、開発者のアイデンティティは公開鍵と秘密鍵に電子的に関連付けられます。証明書をダウンロードして開発者のコンピュータにインストールし、アプリケーションにデプロイメントのための署名をします。

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

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

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

iOSデバイス上でMAFアプリケーションをデバッグするには、デバイスに関連付けられている開発者プロビジョニング・プロファイルを使用する必要があります。デバイスは、iOS Provisioning Portalの「Devices」ページの「Current Available Devices」リストに含まれている必要があり、開発者プロビジョニング・プロファイルに追加される必要があります。

テスト用にMAFアプリケーションを複数のデバイスにデプロイするには、そのデバイスのそれぞれを、使用する予定の非定型のプロビジョニング・プロファイルに追加する必要があります。

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

アプリケーションIDによって、デバイス上のアプリケーションは一意に特定されます。アプリケーションIDは、バンドルID (「iOSプラットフォーム」の「プリファレンス」ページに示されるアプリケーションIDと同じ)と、Apple社から配布される10文字(英数字)の接頭辞で構成されます。

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

図25-18 明示的なアプリケーションID

図25-18の説明が続きます
「図25-18 明示的なアプリケーションID」の説明

8E549T7128.com.oracle.*のように、アプリケーション名にワイルドカード文字(*)を使用すると、一連のアプリケーション間でアプリケーションIDを共有できます。たとえば、com.oracle.MAF.*という管理者名がiOSプロビジョニング・ポータルにある場合、これにより、異なるアプリケーション(com.oracle.MAF.application1およびcom.oracle.MAF.application2)を指定できます。

注意:

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

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

注意:

バンドルIDは、「iOSプラットフォーム」のプリファレンス・ページで設定されたアプリケーションIDと一致する必要があります。

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

iOSデバイス上でのアプリケーションのテストとデバッグが終了したら、App Storeまたは内部ダウンロード・サイトを通してより広範なオーディエンスにアプリケーションを配布できます。

App Storeにアプリケーションを公開するには、.ipaファイルをiTunes Connectに送信する必要があります。これによって、アプリケーションを更新し、テスト・ユーザーを作成することが可能になります。

始める前に:

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

  • iOSプラットフォームの「プリファレンス」ページで、「エクスポート・オプション」セクションの「エクスポート」ドロップダウン・リストから、「App Store」または「エンタープライズ」を選択します。

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

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

    注意:

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

  • .ipaファイルをApple App Storeに配布するための、iTunes Connectアカウントを取得します。詳細は、http://developer.apple.com/のApp Store配布ガイドラインを参照してください。

  • iOS Developer LibraryにあるiTunes Connect Developer Guideを参照してください。

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

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

  1. 「アプリケーション」「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。
  2. 「配布パッケージにデプロイ」を選択します。
  3. 「サマリー」ページをレビューします。このページには、次の値が表示されます。「終了」をクリックします。
    • アプリケーション・バンドルID: Java言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。

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

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

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

  4. iTunes Connectにログインします。
  5. .ipaファイルをiTunes Connectに送信して検討します。詳細は、iTunes Connect Developer Guideを参照してください。
  6. バイナリの更新の詳細は、iTunes Connect Developer Guideを参照してください。

ユニバーサルWindowsプラットフォームへのMAFアプリケーションのデプロイ

MAFアプリケーションは、アプリケーションを開発するローカル・マシン、またはサポートされているUWPデバイス上へのアプリケーションのインストールに使用するインストール・パッケージにデプロイできます。

MAFには、UWPにデプロイするアプリケーション用に2つのビルド・モードが用意されています。開発サイクル中にアプリケーションをテストおよびデバッグする場合は、デバッグ・モードを使用します。リリースの準備が完了したアプリケーションをデプロイする場合は、リリース・モードを使用します。

リリースの準備が完了したアプリケーションは、Windowsストアに公開できません。別のメカニズムを選択して、アプリケーションを配布します。MAFではPowerShellスクリプトがインストール・パッケージに含まれており、これを実行するとアプリケーションがUWPデバイスにインストールされます。

UWPへのアプリケーションのデプロイを試行する前に、次の設定タスクと構成タスクを実行します。

  1. 開発マシンが、MAFアプリケーションをUWPにデプロイするための要件を満たしていることを確認します。使用するUWPデバイスでは、Windows 10オペレーティング・システムが実行される必要があります。このマシンで開発者モードを有効にする必要があります。

    『Oracle Mobile Application Frameworkのインストール』MAFアプリケーションをWindowsプラットフォームにデプロイするためのインストール要件に関する項を参照してください。

  2. MicrosoftのVisual Studioソフトウェアをインストールします。Visual Studioパッケージには、UWPにアプリケーションをデプロイするために必要な、Windows SDKが含まれています。

    『Oracle Mobile Application Frameworkのインストール』ユニバーサルWindowsプラットフォーム用の開発ツールの設定に関する項を参照してください。

  3. デプロイするアプリケーションにデジタル署名するための証明書(個人情報交換ファイル)を作成します。

    『Oracle Mobile Application Frameworkのインストール』MAFアプリケーション用のPFXファイルの作成に関する項を参照してください。

  4. 次の図に示すように、「Windowsプラットフォーム」ダイアログに次の値を入力します。

    • Visual StudioソフトウェアとともにインストールされるWindows SDKの場所。

    • アプリケーションの署名に使用する証明書の場所およびパスワード(必要な場合)。MAFアプリケーションをデバッグ・モードとリリース・モードの両方でデプロイする場合は、これを「デバッグ」ダイアログと「リリース」ダイアログの両方で実行します。

    JDeveloperの「ツール」メニューから「Windowsプラットフォーム」ダイアログにアクセスするには、図に示すように、「プリファレンス」「モバイル・アプリケーション・フレームワーク」の順にクリックします。

図25-19 MAFアプリケーションをデプロイする場合の「Windowsプラットフォーム」の「プリファレンス」

図25-19の説明が続きます
「図25-19 MAFアプリケーションをデプロイする場合の「Windowsプラットフォーム」の「プリファレンス」」の説明

MAFには、デバッグ・モードでMAFアプリケーションをデプロイするための、すぐに使用できるデプロイメント・プロファイル(Windows1)が用意されています。開発マシンおよび環境がセットアップ要件と構成要件を満たしている場合は、アプリケーションをローカル・マシンまたはパッケージにデプロイできます。

このすぐに使用できるデプロイメント・プロファイルを編集することも、1つまたは複数の新しいデプロイメント・プロファイルを作成することもできます。新しいデプロイメント・プロファイルを作成するか、既存のプロファイルを編集して、次のことを実行できます。

  • アプリケーション用に追加のライブラリおよびプロファイル依存性を指定します。

  • ビルド・モードをデバッグまたはリリースから選択します。

  • アプリケーション・バンドルID、アーカイブ名、バージョンなどのオプションを指定します。

  • アプリケーションがスプラッシュ画面でそのロゴをレンダリングするために使用するイメージ、およびユーザーのデバイスに表示されるアイコンを指定します。

  • スプラッシュ画面の背景色を変更します。

デプロイメント・プロファイルの編集方法または作成方法の詳細は、「デプロイメント・プロファイルでの作業」を参照してください。各ダイアログで構成できるフィールドについて情報を得るために、デプロイメント・プロファイルのダイアログで「ヘルプ」をクリックします。

アプリケーションをデプロイする前に、デプロイメントを妨げる可能性のある次の問題に注意してください。

  • Microsoft Windowsでは、ディレクトリおよびファイルのパスの最大長が設定されています。MAFアプリケーションのデプロイメントは、MAFアプリケーションのパスが最大パス長を超過すると失敗します。この問題を回避するには、ディレクトリのパスの長さがWindowsで規定されている最大長未満の場所にMAFアプリケーションを配置します。最大パス長の制限の詳細は、Microsoftのドキュメントを参照してください。

  • 「アプリケーションのローカル・マシンへのデプロイ」オプションを使用してMAFアプリケーションをデプロイする前に、他のプロセスがMAFアプリケーションのデータ・フォルダを使用していないことを確認します。アプリケーションのデータ・フォルダは、通常、C:\Users\[userName]\AppData\Local\Packages\[appBundleId]_[id]にあります。別のプロセスがこのフォルダを使用しているシナリオの例には、メモ帳などのアプリケーションでフォルダ内のファイルを開いている場合があります。どのアプリケーション・プロセスがディレクトリやファイルを使用しているか判別できない場合は、問題を解決するためにマシンを再起動します。

  • 連絡先プラグインを使用するアプリケーションをUWPにデプロイするときには、連絡先プラグインがmaf-plugins.xmlのプラグイン・リストで最初にリスとされていることを確認します。

デバッグ・モードでデプロイするアプリケーションのデバッグ方法の詳細は、「ユニバーサルWindowsプラットフォームでJavaコードをデバッグする方法」を参照してください。

ユニバーサルWindowsプラットフォームへのMAFアプリケーションのデプロイ方法

アプリケーションをUWPにデプロイする、Windows用MAFのデプロイメント・プロファイルを使用してアプリケーションをデプロイします。

MAFアプリケーションをUWPにデプロイするには:
  1. JDeveloperのメイン・メニューから、「アプリケーション」「デプロイ」「Windows1」を選択します。
    ここで、「Windows1」は、Windows用MAFのデプロイメント・プロファイルです。
  2. 表示されるダイアログのリストから適切なデプロイメント・オプションを選択します。
  3. 「終了」をクリックします。

ユニバーサルWindowsプラットフォームへのMAFアプリケーションのデプロイ時に行われる処理

「アプリケーションのローカル・マシンへのデプロイ」オプションと「アプリケーションのパッケージへのデプロイ」オプションのどちらを選択したかによって、MAFはアプリケーションをコンピュータまたはインストール・パッケージにデプロイします。

「アプリケーションのローカル・マシンへのデプロイ」オプションを選択した場合、MAFは使用しているマシンにアプリケーションをデプロイし、そこにアプリケーションをインストールします。次の図の前景は、リリース・モードでローカル・マシンにデプロイされたWorkBetterサンプル・アプリケーションの例です。次の図の背景では、Windows 10コンピュータの「アプリと機能」ページのインストール済アプリケーション内にWorkBetterサンプル・アプリケーションがリストされていることがわかります。

デバッグ・モードでデプロイしたMAFアプリケーション画面の左上に赤いアイコンが表示され、アプリケーションがデバッグ・モードであることを示します。リリース・モードでデプロイしたアプリケーションと同様に、このアプリケーションはWindows 10コンピュータの「アプリと機能」ページで表示とアンインストールを実行できます。

図25-20 Windowsローカル・マシンにリリース・モードでデプロイされたMAFアプリケーション

図25-20の説明が続きます
「図25-20 Windowsローカル・マシンにリリース・モードでデプロイされたMAFアプリケーション」の説明

「アプリケーションのパッケージへのデプロイ」オプションを選択し場合、MAFはアプリケーションを次のディレクトリのインストール・パッケージにデプロイします。

C:\path\to\appRoot\deploy\[DeploymentProfileName]\[deployMode]\MafTemplate\AppPackages

たとえば、「Windows1」デプロイメント・プロファイルを使用してリリース・モードでデプロイされたWorkBetterサンプル・アプリケーション(上の図を参照)は、次のディレクトリにデプロイされます。

C:\...\PublicSamples\WorkBetter\deploy\Windows1\release\MafTemplate\AppPackages

AppPackagesディレクトリには、別のディレクトリ(MafTemplate_*_Test)が含まれています。この後者のディレクトリの内容を、サポートされているUWPデバイスを持ち、MAFアプリケーションをインストールする必要があるエンド・ユーザーに配布します。このディレクトリにはPowerShellスクリプト(Add-AppDevPackage.ps1)が含まれており、エンド・ユーザーはこれを実行して、アプリケーションをインストールします。このスクリプトに加えて、このディレクトリにはアプリケーション・パッケージ、依存パッケージ、およびアプリケーションに署名した証明書が含まれます。次の例では、これらの内容をリストします。

Add-AppDevPackage.ps1                                 
Add-AppDevPackage.resources
Dependencies
MafTemplate_1.0.0.0_x64.appx
MafTemplate_1.0.0.0_x64.appxsym
MafTemplate_1.0.0.0_x64.cer

次の図に示すように、MafTemplate_*_Testディレクトリおよびファイルの名前は、「Windowsオプション」ダイアログで指定したバージョン番号とビルド・モードによって異なります。このダイアログには、デプロイメント・プロファイルを編集するときにJDeveloperの「デプロイメント」ページからアクセスします。「デプロイメント」ページにアクセスするには、「アプリケーション」をクリックして「アプリケーションのプロパティ」をクリックします。

たとえば、バージョン番号として2を指定し、「デバッグ」ビルド・モードを選択した場合、ディレクトリ名はMafTemplate_2.0.0.0_x64_Debug_Testになります。バージョン番号が3で、リリース・ビルド・モードの場合は、MafTemplate_3.0.0.0_x64_Testディレクトリが生成されます。

図25-21 デプロイメント・プロファイルの「Windowsオプション」ダイアログ

図25-21の説明が続きます
「図25-21 デプロイメント・プロファイルの「Windowsオプション」ダイアログ」の説明

アプリケーションのMAFクイック・デプロイメントの概要

クイック・デプロイメントにより、いくつかのデプロイメント・ステップが省略され、デプロイ時間の節約になります。クイック・デプロイメントは、新しいファイル・コンテンツまたは変更されたファイル・コンテンツのみをエミュレータまたはシミュレータに渡すことで時間を節約します。

MAFクイック・デプロイメントでは、パフォーマンスを低下させることなく、競争上優位なデプロイメント時間を提供することで、開発者の生産性を確保します。

アプリケーションのクイック・デプロイメント

クイック・デプロイメントでは、通常の完全なデプロイメントとは対照的に、デプロイメント・ステップをスキップすることでデプロイメント時間を短縮します。クイック・デプロイメントは、ファイルの新しい内容または変更された内容のみをエミュレータまたはシミュレータに渡します。

Androidエミュレータでクイック・デプロイメントを使用するには、「アプリケーションのエミュレータへのデプロイ」アクションを選択します。たとえば、Android2という名前のデプロイメント・プロファイルの場合は、「アプリケーション」メニューで「デプロイ」を選択し、「Android2」を選択してから、デプロイメント・アクションを選択します。「AndroidエミュレータへのAndroidアプリケーションのデプロイ」を参照してください。iOSシミュレータでクイック・デプロイメントを使用するには、iOS2という名前のデプロイメント・プロファイルの場合、「アプリケーション」メニューで「デプロイ」を選択し、「iOS2」を選択してから、デプロイメント・アクションを選択します。「iOSシミュレータへのiOSアプリケーションのデプロイ」を参照してください。

注意:

最初のデプロイメントは完全なデプロイメントです。クイック・デプロイメントは、最初の完全なデプロイメントの後で実行できます。

エミュレータまたはシミュレータにアプリケーションをデプロイすると、クイック・デプロイメント・セッション分析が開始されます。分析の結果によって、デプロイメントをクイック・デプロイメントにするか完全なデプロイメントにするかが決定されます。

クイック・デプロイメント・セッション分析は、アプリケーション・ファイルの変更を検出するために開始されます。アプリケーション・ファイルの変更を分析するMAFツールによってクイック・デプロイメントがトリガーされます。分析で同じデプロイメント・プロファイルを使用する前回のクイック・デプロイメント・セッションからデプロイメント・アーティファクトを見つけられない場合は、完全なデプロイメントがトリガーされます。

MAFでは、デプロイメント機能が簡略化されています。JDeveloperでアプリケーション・ファイルに変更を加えると、それらの変更は、エミュレータまたはシミュレータにデプロイされたアプリケーションに移動されるため、再デプロイメントの必要はありません。

クイック・デプロイメントの主な機能

クイック・デプロイメントには次の機能があります。

  • クイック・デプロイメントは、AndroidエミュレータまたはiOSシミュレータにデプロイされているアプリケーションでサポートされます。

  • 仮想ボックス・イメージに対してルート・アクセスが構成されている場合は、そのイメージをクイック・デプロイメントに使用できます。

  • AMXページやタスク・フローへの変更など、JDeveloperでアプリケーションに変更を加えると、その変更はエミュレータやシミュレータにデプロイされているアプリケーションにプッシュされるため、完全なデプロイメントは必要ありません。アプリケーションの変更の完全なリストは、「クイック・デプロイメントをサポートするアーティファクト」を参照してください。

  • ファイルを削除すると、完全なデプロイメントがトリガーされます。

  • アプリケーションのクイック・デプロイメントでは、新しいファイルと変更されたファイルのみが更新されます。クイック・デプロイメントでは追加のデプロイメント処理は実行されません。

クイック・デプロイメントをサポートするアーティファクトについて

特定のアーティファクトやAMXページへの変更、バインディングの変更などが、MAFクイック・デプロイメントをサポートしています。

MAFクイック・デプロイメントをサポートするアーティファクトの変更

次のアーティファクトの変更は、クイック・デプロイメントをサポートします。

  • AMXページへの変更

  • タスク・フローへの変更

  • バインディングへの変更

  • maf-skins.xmlへの変更

  • 新しいスタイル・シートの追加およびmaf-skins.xmlでの参照

  • maf-config.xmlへの変更

  • adf-config.xmlへの変更

  • connections.xmlへの変更

  • wsm-assembly.xmlへの変更

クイック・デプロイメントの要件について

クイック・デプロイメントは、リスとされた前提条件が満たされている場合にのみ開始されます。

MAFアプリケーションのクイック・デプロイメントの前提条件

アプリケーションのクイック・デプロイメントは、次の要件を満たすと開始されます。

  • ターゲットのAndroidエミュレータまたはiOSシミュレータでインストール済アプリケーションが利用可能である。

  • MAFアプリケーションのバンドルIDが一意である。

  • 最初の完全なデプロイメントが完了済である。

  • Androidエミュレータにデプロイする場合のルート・アクセス。

クイック・デプロイメント・セッション中の処理

クイック・デプロイメント・セッションは、デプロイメントをクイック・デプロイメントと完全なデプロイメントのどちらにする必要があるかを分析して判断します。このセッションは、アプリケーションのデプロイ時に開始されます。

エミュレータまたはシミュレータにアプリケーションをデプロイすると、クイック・デプロイメント・セッションが開始されます。セッションによって分析が実行され、デプロイメントをクイック・デプロイメントにするか完全なデプロイメントにするかが決定されます。

MAFクイック・デプロイメント・セッションと分析

クイック・デプロイメント・セッションは、次のように処理を進めます。

  • 最初のクイック・デプロイメント・セッション分析を実行します。

  • アプリケーション・ファイルへの次の変更を記録します。

    • 最後のクイック・デプロイメント・セッション以降の変更

    • 同じデプロイメント・プロファイルを使用するアプリケーションへの変更

  • 変更したファイルでクイック・デプロイメントがサポートされている場合は、クイック・デプロイメントのための次のようなステップが実行されます。そうでない場合は、フル・デプロイメントが行われます。

    • 変更したファイルをエミュレータまたはシミュレータにコピーします。

    • エミュレータまたはシミュレータでアプリケーションを再起動します。

アプリケーションの完全なデプロイメントの開始方法

特定のアクションによって、アプリケーションの完全なデプロイメントがトリガーされます。アプリケーションの完全なデプロイメントが必要な場合は、リストされたアクションの1つを開始します。

アプリケーションの完全なデプロイメントをトリガーするアクション

次のアクションは、アプリケーションの完全なデプロイメントをトリガーします。

  • JDeveloperが再起動された。

  • MAF以外のプロジェクトでファイルが変更された。

  • MAF機能プロジェクト内のJavaファイルが作成、変更または削除された。

  • MAF以外のプロジェクトでファイルが変更され、デプロイメントの前に「すべてクリーン」が実行された。

  • MAF機能プロジェクト外において、アプリケーションでファイルが削除された。

  • アプリケーションが別のデプロイメント・プロファイル(前のクイック・デプロイメントで使用されていないプロファイル)を使用してデプロイされた。

  • アプリケーション・レベルの一部のアーティファクトによって、完全なデプロイメントがトリガーされる場合があります。次のアーティファクトへの変更は、完全なデプロイメントをトリガーします。

    • maf-application.xml

    • maf-feature.xml

    • maf-plugins.xml

    • maf.properties

    • logging.properties

アプリケーションの完全なデプロイメントの強制方法

特定のアクションを開始すると、アプリケーションの完全なデプロイメントを強制的に実施できます。リストされたアクションの1つを開始することで、完全なデプロイメントを開始します。

特定のユーザー・アクションは、MAFアプリケーションの完全なデプロイメントを強制します。

MAFアプリケーションの完全なデプロイメントを強制するアクション

アプリケーションの完全なデプロイメントは、複数の方法で強制できます。MAFアプリケーションの完全なデプロイメントをトリガーするには、次のいずれかのアクションを使用します。

  • クイック・デプロイメントをサポートしないファイルを変更します。

  • 「ビルド」をクリックし、「すべてクリーン」をクリックします。

  • AndroidエミュレータまたはiOSシミュレータでアプリケーションをアンインストールします。

  • JDeveloperを再起動します。

クイック・デプロイメントの制限に関する必知事項

MAFアプリケーションのクイック・デプロイメントに関して、いくつかの制限があります。リストに制限を列挙します。

クイック・デプロイメントの制限: ファイルのデプロイメントおよびユーザー・アクション

次のファイルは、デプロイメント中に追加処理が必要になるため、クイック・デプロイメントではデプロイできません。

  • MAF ViewControllerまたはApplicationControllerプロジェクト以外のプロジェクトで作成、更新または削除されたファイル

  • MAF機能プロジェクト外で削除されたアプリケーション・ファイル

  • MAF機能プロジェクト内から削除されたファイル

  • 新規、変更または削除されたJavaファイル

  • アプリケーション・レベルの次のアーティファクトへの変更は、完全なデプロイメントをトリガーします。

    • maf-application.xml

    • maf-feature.xml

    • maf-plugins.xml

    • maf.properties

    • logging.properties

クイック・デプロイメントは、次のユーザー・アクションのコンテキストでは開始できません。

  • 前のクイック・デプロイメントでインストールされたエミュレータ・アプリケーションの変更または削除。

  • 前のクイック・デプロイメントで使用されていないデプロイメント・プロファイルを使用したアプリケーションのデプロイ。

クイック・デプロイメントでは、次の変更は検出または処理されません。

  • 別のエミュレータへのアプリケーションのクイック・デプロイメント。

  • JDeveloperの再起動。JDeveloperの再起動後の最初のデプロイメントは完全なデプロイメントです。再起動後の完全なデプロイメントを確実に行うために必要なユーザー・アクションはありません。クイック・デプロイメントは、最初の完全なデプロイメントの後で実行できます。

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

MAFビュー・コントローラ・プロジェクトによる再利用を可能にするために、アプリケーション機能(一般的に、MAF AMXまたはローカルHTMLとして実装されるもの)は、機能アーカイブ(FAR)というアーカイブにバンドルされます。

FARは、モバイル・アプリケーションで使用できる、アプリケーション機能アーティファクト(アイコン・イメージ、リソース・バンドル、HTML、JavaScriptまたは他の実装固有のファイルなど)が含まれているJARファイルです。(FARには、Javaクラスを含めることも可能ですが、これらのクラスはコンパイルする必要があります。)次の例は、1つのmaf-feature.xmlファイルと1つのconnections.xmlファイルを含むFARの内容を示しています。

/* Contents of a Feature Archive File */
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を使用する場合は、ビュー・コントローラ・プロジェクトのみをデプロイすればすみます。

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

アプリケーションの接続を作成してから、タスク内の手順に従って、機能アーカイブ用のデプロイメント・プロファイルを作成します。

「デプロイメント・プロファイルの作成」ダイアログを使用します。

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

図25-22の説明が続きます
「図25-22 MAF機能アーカイブ・ダイアログの作成」の説明

始める前に:

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

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

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

    注意:

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

  2. 「デプロイメント・プロファイルの作成」ダイアログで「MAF機能アーカイブ」を選択します。
  3. プロファイル名を入力するか、デフォルトを受け入れて、「OK」をクリックします。

    注意:

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

  4. 機能アーカイブJARファイルに含める接続を選択します。

    図25-23 FARの接続の選択

    図25-23の説明が続きます
    「図25-23 FARの接続の選択」の説明
  5. 「次へ」をクリックしてオプションをレビューし、「終了」をクリックします。

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

MAFが提供する「機能アーカイブJARファイルへデプロイします。」オプションを使用すると、JARファイルとしてFARをデプロイできます。タスク内の手順に従って、機能アーカイブ・デプロイメント・ファイルをデプロイします。

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

図25-24 デプロイメント・アクション

図25-24の説明が続きます
「図25-24 デプロイメント・アクション」の説明

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

  1. ビュー・コントローラ・プロジェクトを右クリックして、機能アーカイブのデプロイメント・プロファイルを選択します。
  2. 「終了」をクリックします。図に示すように、「サマリー」ページに機能アーカイブ・ファイルがデプロイされるJARパスのフルパスが表示されます。

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

    図25-25の説明が続きます
    「図25-25 デプロイメントの「サマリー」ページ」の説明

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

MAFは、AppRoot/ViewController/deployディレクトリに作成するJARファイル(FAR)にアプリケーション機能のコンテンツをパッケージします。このFARには、AMXページ、タスク・フロー、アイコンなど、アプリケーション機能を構成するリソースが含まれます。

アプリケーション機能が使用した共有ライブラリはFARに含まれません。JDeveloperの「デプロイメント」→「ログ」ウィンドウ(「ウィンドウ」「ログ」)の出力を確認します。FARにデプロイしたアプリケーション機能に共有ライブラリが含まれる場合、共有ライブラリがFARから除外されたことを通知するメッセージがMAFによってログに記録されます。アプリケーションでFARを使用するMAFアプリケーションの開発者に対し、FARを使用する際にMAFアプリケーションで共有ライブラリのリソースを使用する場合、共有ライブラリを個別に取得する必要があることを通知してください。共有ライブラリの詳細は、「MAF共有ライブラリによるMAFアプリケーション・コンテンツの再利用」を参照してください。

MAFアプリケーションでFARを使用するMAFアプリケーションの開発者は、FARが格納されているディレクトリへのファイル・システム接続を作成する必要があります。この接続を作成すると、図に示すように、パッケージされたFARおよびアプリケーション機能が「リソース」ウィンドウに表示されます。MAFアプリケーションでのFARの使用の詳細は、「MAFアプリケーションでのFARコンテンツの使用方法」を参照してください。

図25-26 「リソース」ウィンドウのデプロイされた機能アーカイブJAR

図25-26の説明が続きます
「図25-26 「リソース」ウィンドウのデプロイされた機能アーカイブJAR」の説明

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

新しいモバイル・アプリケーションを既存のモバイル・アプリケーションから作成するには、元のモバイル・アプリケーションをモバイル・アプリケーション・アーカイブ(.maa)ファイルとしてパッケージ化するか、この.maaから新しいモバイル・アプリケーションを作成します。

次のように既存のモバイル・アプリケーションから新しいモバイル・アプリケーションを作成できます。

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

表25-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ファイル(キーストア・ファイル)が格納されます。

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

注意:

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

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

タスク内の手順に従って、モバイル・アプリケーション・アーカイブ・ウィザードを使用して.maaファイルを作成します。.maaファイルは、OJDeployを使用して作成することもできます。

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

ヒント:

また、「コマンド行からのMAFアプリケーションのデプロイ」で説明されているように、OJDeployを使用して.maaファイルを作成することもできます。

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

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

  2. 「デプロイメント・プロファイルの作成」ダイアログで「MAFアプリケーション・アーカイブ」を選択し、「OK」をクリックします。

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

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

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

    図25-28の説明が続きます
    「図25-28 モバイル・アプリケーション・アーカイブ・ファイルの名前とパスの入力」の説明
  4. 必要に応じて、次を実行します。

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

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

      図25-29の説明が続きます
      「図25-29 META-INFの内容に付けるファイル・グループ名の入力」の説明
    2. この「アプリケーション・ディスクリプタ」ページの「コントリビュータ」サブページを選択して、ファイル・グループの内容を提供するディレクトリとJARファイルのリストを編集します。

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

      図25-30の説明が続きます
      「図25-30 モバイル・アプリケーション・アーカイブ・ファイルへのコントリビュータの編集」の説明
    3. 「フィルタ」ページを使用して、.maaファイルに含めるファイルの編集やコンテンツの組込みまたは除外ルールの設定を行います。

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

      図25-31の説明が続きます
      「図25-31 ファイルとディレクトリの組込み(または除外)」の説明
    4. 「プロファイルの依存性」ページを使用して、プロジェクト内の依存プロファイルを指定します。

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

      図25-32の説明が続きます
      「図25-32 デプロイメント・プロファイルの選択」の説明

モバイル・アプリケーションをMAFアプリケーション・アーカイブ・ファイルにパッケージ化するには、次の手順を実行します。

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

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

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

    図25-33の説明が続きます
    「図25-33 MAFアプリケーション・アーカイブ・ファイルへのデプロイメント」の説明
  3. 「次へ」をクリックして、デプロイメント・サマリーを確認します。

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

    図25-34の説明が続きます
    「図25-34 MAFアプリケーション・アーカイブのデプロイメント・サマリー」の説明
  4. 「終了」をクリックします。

アプリケーション・アーカイブからの新規アプリケーションの作成

アプリケーション・アーカイブ・ファイルを使用して、様々なカスタマイズが容易になる新しいMAFアプリケーションを作成します。

開発者(および同僚やパートナ)は、アプリケーション・アーカイブ・ファイル(.maa)を起点として新しいMAFアプリケーションを作成できます。.maaファイルからモバイル・アプリケーションを導出することによって、次のような様々なカスタマイズが可能になります。

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

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

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

MAFアプリケーション・アーカイブ(.maa)・ファイル形式を使用すると、署名されていないモバイル・アプリケーションをサード・パーティに提供できます。

注意:

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

アプリケーション・アーカイブから新規アプリケーションを作成する方法

タスク内の手順に従って、「アーカイブ・ファイルからのMAFアプリケーション」オプションを使用して、.maaファイルを新しいモバイル・アプリケーションにインポートします。

.maaファイルを新しいモバイル・アプリケーションにインポートします。

アプリケーション・アーカイブから新しいアプリケーションを作成するには、次の手順を実行します。

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

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

    注意:

    または、「ファイル」「インポート」「アーカイブ・ファイルからのMAFアプリケーション」を選択してもかまいません。

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

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

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

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

    図25-35 ディレクトリの場所の入力

    図25-35の説明が続きます
    「図25-35 ディレクトリの場所の入力」の説明
  5. 「次へ」をクリックしてインポートのサマリー情報を確認し、「終了」をクリックします。

MAFアプリケーション・アーカイブ・ファイルをインポートする場合の処理

MAFは、アプリケーション・フォルダを作成して、そこに関連ディレクトリとそのコンテンツを解凍します。「プロジェクト」ディレクトリ内のJARファイルごとに、MAFはプロジェクト・フォルダを作成して、JARファイルのコンテンツを該当するプロジェクト・フォルダに解凍します。

MAFでは、.maaファイルのインポート後に次のことを実行します。

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

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

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

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

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

    注意:

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

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

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

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

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

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

      • 元の.jprファイル。

      • META-INFpublic_htmlsrcadfmsrcなどの標準的なディレクトリ。

      • ExternalLibsディレクトリの内容。

        注意:

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

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

        注意:

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

OJDeployを使用したコマンド行からのMAFアプリケーションのデプロイ

OJDeployコマンド行ツールを使用して、MAFアプリケーションをAndroid、iOSおよびUWPデバイスにデプロイできます。コマンド行のデプロイメントは、テストのためのツールとして機能すると同時に、スクリプトを使用したアプリケーションのデプロイ方法として機能します。

デプロイメント・プロファイルを作成したら、OJDeployを使用してiOSシミュレータに、またはiOSバンドル(.ipaおよび.appファイル)として、あるいは機能アーカイブJARファイルとして、ヘッドレス・モードでアプリケーションをデプロイできます。同様に、OJDeployを使用すると、AndroidエミュレータとAndroidデバイスの両方に、またはAndroidアプリケーション・パッケージ(.apk)・ファイルとして、あるいは機能アーカイブJARファイルとして、アプリケーションをデプロイできます。同じように、OJDeployを使用すると、ローカル・マシンに、またはアプリケーション・インストール・パッケージ(.appxファイル)として、Windowsアプリケーションをデプロイできます。

注意:

OJDeployをMac上で使用するには、次の行をojdeploy.confファイルに追加してください。

SetSkipJ2SDKCheck true

このファイルはjdev_install/jdeveloper/jdev/binにあります。

初めてMAFアプリケーションをAndroidプラットフォームにデプロイするときに、MAFはGradleをダウンロードしてインストールします。開発マシンが企業のファイアウォールで保護されている場合は、MAFが正常にGradleをダウンロード、インストールおよび構成できるように、Gradleプロキシ設定を構成します。「Gradleプロキシ設定の構成方法」を参照してください。

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

  • deployToDevice: Androidデバイスにアプリケーションをデプロイします。

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

  • deployToPackage: iOSアプリケーションを.ipaファイルとして、Androidアプリケーションを.apkファイルとして、またはUWPアプリケーションをインストール・パッケージ(.appxファイル)としてデプロイします。アプリケーションは、Appleコンピュータでのみ、.ipaファイルとしてパッケージ化できます。アプリケーションは、Microsoft Windows 10コンピュータでのみ、.appxファイルとしてパッケージ化できます。

  • deployToLocalMachine: MAFアプリケーションをWindowsローカル・マシンにデプロイします。

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

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

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

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

注意:

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

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

ヒント:

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

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

引数 説明

-profile

Android、Windowsまたは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スキーマ。

表25-5に示した引数の他に、『Oracle JDeveloperによるアプリケーションの開発』コマンドラインからのデプロイで説明されているOJDeployオプションを使用することもできます。

注意:

次のオプションはサポートされていません。

  • -forcerewrite

  • -nocompile

  • -nodatasources

  • -nodepdendents

  • -outputfile

  • -updatewebxmlejbrefs

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

表25-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

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

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

マクロ 説明

workspace.name

アプリケーション・ワークスペースのコンテナ・ファイルの名前(.jws拡張子を除く)。

workspace.dir

アプリケーション・ワークスペースのコンテナ(.jws)・ファイルのディレクトリ。

profile.name

デプロイするプロファイルの名前。

profile.dir

プロファイルのデフォルトのデプロイメント・ディレクトリ。

base.dir

このパラメータを使用して、現在のojdeployディレクトリをオーバーライドします。ビルド・スクリプトでbasedir属性を使用して、現在のojdeployディレクトリをオーバーライドできます。