25 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アプリケーションを作成直後にデプロイできます。これを行うには、「アプリケーション」を選択した後、「デプロイ」を選択します。
その後、次の図に示す「デプロイメント・アクション」ページを使用して、適切なデプロイメント・ターゲットを選択します。
各デプロイメント・プロファイルには、環境設定と構成に関する独自の要件があります。詳細は、次を参照してください。
これらのプロファイルには、デフォルト値をそのまま使用するか、「アプリケーション・プロパティ」ダイアログの「デプロイメント」ページでプロファイルを選択し、「編集」をクリックすることによって、それらの値を編集することもできます。デフォルトのAndroidアプリケーション・プロファイルの「Androidオプション」ページを図に示します。
MAFでは、アプリケーション・コントローラ・プロジェクトとビュー・コントローラ・プロジェクトは、別々の機能アーカイブ(FAR)ファイルとしてパッケージ化されます。MAFファイルのこれらのJARファイルは他のアプリケーションのリソースとして使用され、それは「機能アーカイブ・ファイル(FAR)のデプロイ」で説明されています。次の図に示すように、「アプリケーションのプロパティ」ダイアログのプロファイルの依存性ページを使用して、FARを含めたり除外したりできます。
注意:
アプリケーション・コントローラ・プロジェクトに含まれるFARプロファイルの依存性は1つである必要があります。そうでない場合、デプロイメントは失敗します。
次の図に示すように、「プロジェクト・プロパティ」ダイアログのファイル・グループに関連するページを使用すると、ビュー・コントローラのFARファイルに含まれるコンテンツをカスタマイズできます。「プロジェクト・プロパティ」ダイアログの詳細は、Oracle JDeveloperのオンライン・ヘルプおよび『Oracle JDeveloperによるアプリケーションの開発』のデプロイメント・プロファイルの構成に関する項を参照してください。
「アプリケーションのプロパティ」ダイアログの各ページを使用したデプロイメント・プロファイルの編集の詳細は、『Oracle JDeveloperによるアプリケーションの開発』のデプロイメント・プロファイルのプロパティの表示と変更に関する項と、Oracle JDeveloperオンライン・ヘルプの「アプリケーションのプロパティ」ダイアログや「プロジェクト・プロパティ」ダイアログに関する項を参照してください。
デプロイメント・プロファイルの作成方法
モバイル・アプリケーションを作成すると、MAFによって、デプロイメント・プロファイルのセットが作成されます。これらのプロファイルを使用してアプリケーションをデプロイしたり、それらのプロファイルを編集したり、MAF固有のデプロイメント・プロファイル・ページを使用して新しいプロファイルを構成できます。
デプロイメント・プロファイルの作成ウィザード(図25-6を参照)を使用して、それらのページからデフォルトのデプロイメント・プロファイルを作成できます。デプロイメント・プロファイルは、必要な数だけ作成できます。これらの標準デプロイメント・プロファイル・ページの詳細は、「ヘルプ」をクリックしてJDeveloperオンライン・ヘルプを参照してください。
注意:
MAFアプリケーションのデプロイメントでは、アプリケーションレベルのデプロイメント・プロファイルを作成し、関連する依存関係を構成する必要があります。デフォルトのデプロイメント・プロファイルおよび関連する依存関係は、新しいMAFアプリケーションを作成したときにのみ自動的に作成されます。既存のMAFアプリケーションを新しいアプリケーションレベル・デプロイメント・プロファイルで更新した場合、またはアプリケーションレベル・デプロイメント・プロファイルをデプロイした場合、Jdeveloperによって関連するプロジェクトレベルFARデプロイメント・プロファイルは作成されず、また依存関係も設定されません。
始める前に:
JDeveloperでモバイル・アプリケーションをデプロイできるようにするには、『Oracle Mobile Application Frameworkのインストール』のプラットフォームとフォーム・ファクタに応じた開発環境の構成に関する項で説明するように、ターゲット・プラットフォーム用のSDKを指定する必要があります。
ヒント:
iOSデプロイメントの場合は、iOSシミュレータを1回以上実行してから、そのディレクトリの場所を構成します。
デプロイメント・プロファイルを作成するには:
デプロイメント・プロファイルの作成時の処理
「デプロイメント・プロファイルの作成」ウィザードが完了すると、JDeveloperによってデプロイメント・プロファイルが作成され、デプロイメント・プロファイルのプロパティ・エディタが開きます。アプリケーションがデプロイされると、JDeveloperによって、デプロイメント・ディレクトリ、関連するサブディレクトリ、およびアプリケーションレベル・プロファイルへの依存関係として指定されたプロジェクトレベルFARファイルが作成されます。
ウィザードが完了すると、JDeveloperによってデプロイメント・プロファイルが作成され、デプロイメント・プロファイルのプロパティ・エディタが開きます。
表25-1に、デプロイメント・プロファイルのプロパティ・エディタのMAFに固有のページをリストします。
表25-1 MAF固有のデプロイメント・プロファイル・ページ
ページ | 機能 |
---|---|
iOSオプション |
iOSデバイスまたはiOSシミュレータにデプロイされるアプリケーションの設定を変更できます。 |
Androidオプション |
AndroidデバイスまたはAndroidエミュレータにデプロイされるアプリケーションの設定を変更できます。 |
Windowsオプション |
ユニバーサルWindowsプラットフォームにデプロイされるアプリケーションの設定を変更できます。 |
アプリケーション・イメージ |
適切なグラフィックス・ファイルを追加することで、アプリケーションにカスタム・アイコンを割り当てられます。 |
デバイスの向き |
アプリケーションの表示をデバイスの特定の向きに制限できます。このページはiOSデプロイメント・プロファイルのみに使用されます。 |
注意:
デプロイメントはアプリケーションのニーズによって異なります。表25-1にリストされたページにシードされたデフォルト値を使用してアプリケーションをデプロイできます。
注意:
既存の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を参照してください。
Gradleプロキシ設定の構成方法
コンピュータが企業ネットワーク内にある場合は、AndroidプラットフォームにデプロイするMAFアプリケーションをビルドするのに必要なGradleツールをMAFがダウンロードしてインストールできるよう、プロキシ設定を構成します。
Gradleプロキシ設定を構成する手順:
-
JDeveloperで「ツール」→「プリファレンス」→「モバイル・アプリケーション・フレームワーク」→「Androidプラットフォーム」→「Gradleプロキシ設定」をクリックし、ダイアログを開きます。
-
必要に応じて、ダイアログの「HTTPプロキシ」および「HTTPSプロキシ」セクションのフィールドへの入力を行います。
-
ホスト名: プロキシ・サーバーのURIを入力します。
-
ポート番号: プロキシ・サーバーが使用するポート番号を入力します。
-
プロキシを使用しない: 無視するURIの|区切りリストを入力します。たとえば、「
*.nonproxyrepos.com|*.oracle.com|localhost
」と入力します。 -
プロキシ認証: プロキシ・サーバーに認証が必要な場合に選択し、「ログイン」および「パスワード」フィールドにこれらの資格証明を入力します。
-
HTTPSプロキシを有効にする: HTTPSプロキシ・サーバーの詳細(ホスト名、ポート番号など)を指定する必要がある場合に選択します。これにより、以降の入力フィールドが書込み可能になります。
-
-
「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
)を参照してください。
デバッグ・モードのキー・オプションを構成するには:
-
「ツール」をクリックして、「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択します。
-
「Androidプラットフォーム」を選択し、「署名資格証明」セクションの「キー」および「キーストア・パスワード」フィールドに、デバッグ・デプロイメントに必要なキーストア・ファイルとキーを作成するためにデプロイメントで使用されるパスワードを入力します。Androidデバイスまたはエミュレータへのデプロイメント用のキーストアとキーファイルを生成するこのパスワードには、6文字以上の長さであれば、任意の値を指定できます。デフォルトのパスワードはAndroidです。
リリース・モードのキー・オプションを構成する手順:
-
「ツール」をクリックして、「プリファレンス」→「モバイル・アプリケーション・フレームワーク」を選択します。
-
「Androidプラットフォーム」→「リリース」タブを選択し、次を定義します。
-
キーストアの場所: 配布するアプリケーションの署名に使用する秘密鍵を含むキーストアのディレクトリを入力、参照および取得します。
-
キーストア・パスワード: キーストアのパスワードを入力します。このパスワードを使用すると、物理ファイルにアクセスできます。
-
キーの別名: キーの別名を入力します。これはkeytoolの
-alias
引数に使用する値セットです。別名の最初の8文字のみが使用されます。 -
キー・パスワード: キーのパスワードを入力します。このパスワードを使用すると、キーストア内のキー(別名によって識別される)にアクセスできます。
ヒント:
keytoolユーティリティによるキーストアの生成前に、keytoolユーティリティが要求するパスワードとキー・パスワードを入力します。
-
-
「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プラットフォームにデプロイする手順:
-
「アプリケーション」→「デプロイ」を選択し、Androidデプロイメント・プロファイルを選択します。
-
表示されるダイアログのリストから適切なデプロイメント・オプションを選択します。
-
アプリケーションのデバイスへのデプロイ
Androidデバイスに直接デプロイするこのオプションを選択する前に、JDeveloperをホストする開発コンピュータにデバイスを接続し、そのデバイスを開発モードに設定して、USBデバッグを有効にします。これらのタスクの詳細は、『Oracle Mobile Application Frameworkのインストール』のAndroidデバイスを設定して開発マシンからアプリケーションをインストールする方法に関する項を参照してください。
-
アプリケーションのエミュレータへのデプロイ
Androidエミュレータに直接デプロイするこのオプションを選択する前に、Androidエミュレータを設定して起動します。このタスクの詳細は、『Oracle Mobile Application Frameworkのインストール』のAndroidプラットフォーム用の開発ツールの設定に関する項を参照してください。
-
アプリケーションのパッケージへのデプロイ
Androidデバイスまたはエミュレータへのインストール用に配布可能な.APKファイルにMAFアプリケーションをデプロイします。
-
-
「サマリー」ページを確認し、「終了」をクリックします。
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アプリケーションでは、このアイコンはレンダリングされません。
MAFは、Androidデバッグ・ブリッジを使用して、MAFアプリケーションをデプロイするデバイスまたはエミュレータに接続します。デプロイメントでデバイスが検出されない場合は、デバイス(デバイスにデプロイする場合)またはエミュレータ(Androidエミュレータにデプロイする場合)が検出されるまで、Androidデバッグ・ブリッジ・サーバーが5回再起動されます。どちらも検出されない場合、次の図に示すように、デプロイメント・プロセスは終了します。
デプロイメント前に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』を参照してください。
始める前に:
Androidテーマに適しており、複数の画面タイプをサポートできるディメンション、密度およびコンポーネントを使用するPNG、JPEGまたはGIFファイル形式のイメージを取得します。Android開発者のWebサイト(http://developer.android.com/guide/practices/screens_support.html
)で入手可能なドキュメント『Supporting Multiple Screens』を参照してください。
カスタム・イメージを追加するには:
- 「アプリケーション・イメージ」をクリックします。
- 「参照」機能を使用して、プロジェクト・ファイルからスプラッシュ画面およびアイコン・イメージ・ファイルを選択します。上の図は、低密度、中密度、高密度、超高密度、超超高密度、超超超高密度のディスプレイを装備するデバイスでの表示用にアプリケーションで使用されるアプリケーション・アイコンのイメージ、および縦向きのスプラッシュ画面用のイメージを選択する様子を示しています。
- 「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
ディレクトリは、イメージ密度(ldpi
、mdpi
、hdpi
、xhdpi
、xxhdpi
およびxxxhdpi
)と向き(port
、land
)に対応します。これらのディレクトリ内で、JDeveloperは、各アイコン・イメージ・ファイルの名前をadfmf_icon.png
に、各スプラッシュ画面イメージの名前をadfmf_loading.9.png
またはadfmf_loading.png
に変更します(9-patchのイメージを使用するかどうかによって異なります)。
表25-2 シードされたアプリケーション・イメージのデプロイメント・ファイルの場所
ソース・ファイル(...\resource\Android) | 一時デプロイメント・ファイル(...ViewController\deploy) |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
カスタム・イメージの場合、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/
を参照してください。
ヒント:
「コマンド行からの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シミュレータへのデプロイメントではなく)には、プロビジョニング・プロファイルと証明書の両方を取得する必要があります。
デプロイメント・プロファイルを作成するには:
iOSビルド・オプションの定義
iOSビルド・オプションでは、デバッグまたはリリース・ビットとライブラリによりアプリケーションをデプロイできます。
ビルド・オプションを設定するには:
MAFアプリケーションをデバッグ・モードでデプロイする場合は、図の左上に示すように、MAFアプリケーションの各画面に赤いアイコンが表示されます。リリース・モードでデプロイしたMAFアプリケーションでは、このアイコンはレンダリングされません。
iOSアプリケーションへのカスタム・イメージの追加
「アプリケーション・イメージ」ページでは、指定したアプリケーション・アイコン、およびカスタム・イメージ付きのアートワークに使用されているデフォルトのOracleイメージをオーバーライドすることで、アプリケーションをリブランドできます。
様々なデバイスで使用されるカスタム・イメージの場所を入力する「アプリケーション・イメージ」ページを、次の図に示します。iOSアプリケーション・アイコン・イメージの詳細は、『iOS Human Interface Guidelines』のIcon and Image Designセクションを参照してください。このドキュメントはiOS Developer Libraryで入手できます。
注意:
すべてのイメージはPNG形式であることが必要です。
カスタム・イメージを追加するには:
デバイス署名およびエクスポート・オプションの設定方法
iOSプラットフォームの「プリファレンス」ページには、開発コンピュータ上のプロビジョニング・プロファイルの場所、チームの識別子、署名アイデンティティの名前、およびエクスポート方法のためのフィールドが含まれています。
アプリケーションを配布パッケージにデプロイする場合、これらのパラメータを定義する必要があります。署名アイデンティティはアプリケーションのコード署名に使用します。証明書とその公開鍵はメンバー・センターに格納され、対応する署名アイデンティティ(公開鍵と秘密鍵を保持する証明書)は開発者のキー・チェーンに格納されます。この秘密鍵がないとコード署名できません。
注意:
アプリケーションをiOSシミュレータにデプロイする場合、署名アイデンティティ、プロビジョニング・プロファイルまたはエクスポート方法を指定する必要はありません。
デバイス署名およびエクスポート・オプションの設定手順:
注意:
プロビジョニング・プロファイルには、アプリケーションの開発バージョン用とリリース・バージョン用の両方があります。アプリケーションのリリース・バージョンに使用されるプロビジョニング・プロファイルは、あらゆるデバイスにインストールできます。一方、開発バージョン用のプロビジョニング・プロファイルは、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シミュレータにアプリケーションをデプロイするには:
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 Developer LibraryにあるApp Distribution Guideを参照してください。
iOSデバイスにアプリケーションをデプロイするには:
-
「アプリケーション」→「デプロイ」を選択し、iOSデプロイメント・プロファイルを選択します。
-
「配布パッケージにデプロイ」を選択して、「次」を選択します。
-
「終了」をクリックする前に「サマリー」ページをレビューします。このページには、次の値が表示されます。
-
アプリケーション・バンドルID: Java言語のようなパッケージ名(com.<organization name>.<application name>)を含む一意の名前。
-
ファイル: 最終イメージのファイル名。
-
シグネチャ: アプリケーションを作成した開発者(または会社)。「iOSプラットフォーム」のプリファレンス・ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。
-
プロビジョニング・プロファイル: 1つ以上の開発用証明書とデバイスをアプリケーションIDと関連付けるプロビジョニング・プロファイルの名前。「iOSプラットフォーム」のプリファレンス・ページでこの値が構成されていない場合、「サマリー」ページには<指定なし>と表示されます。
-
-
iOSデバイスを開発コンピュータに接続します。
-
iTunesを開きます。
-
「配布パッケージにデプロイ」デプロイメント・アクションによって生成された
.ipa
ファイルを見つけます。 -
.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
ディレクトリに追加してください。
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を図に示します。
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に配布するには:
ユニバーサルWindowsプラットフォームへのMAFアプリケーションのデプロイ
MAFアプリケーションは、アプリケーションを開発するローカル・マシン、またはサポートされているUWPデバイス上へのアプリケーションのインストールに使用するインストール・パッケージにデプロイできます。
MAFには、UWPにデプロイするアプリケーション用に2つのビルド・モードが用意されています。開発サイクル中にアプリケーションをテストおよびデバッグする場合は、デバッグ・モードを使用します。リリースの準備が完了したアプリケーションをデプロイする場合は、リリース・モードを使用します。
リリースの準備が完了したアプリケーションは、Windowsストアに公開できません。別のメカニズムを選択して、アプリケーションを配布します。MAFではPowerShellスクリプトがインストール・パッケージに含まれており、これを実行するとアプリケーションがUWPデバイスにインストールされます。
UWPへのアプリケーションのデプロイを試行する前に、次の設定タスクと構成タスクを実行します。
-
開発マシンが、MAFアプリケーションをUWPにデプロイするための要件を満たしていることを確認します。使用するUWPデバイスでは、Windows 10オペレーティング・システムが実行される必要があります。このマシンで開発者モードを有効にする必要があります。
『Oracle Mobile Application Frameworkのインストール』のMAFアプリケーションをWindowsプラットフォームにデプロイするためのインストール要件に関する項を参照してください。
-
MicrosoftのVisual Studioソフトウェアをインストールします。Visual Studioパッケージには、UWPにアプリケーションをデプロイするために必要な、Windows SDKが含まれています。
『Oracle Mobile Application Frameworkのインストール』のユニバーサルWindowsプラットフォーム用の開発ツールの設定に関する項を参照してください。
-
デプロイするアプリケーションにデジタル署名するための証明書(個人情報交換ファイル)を作成します。
『Oracle Mobile Application Frameworkのインストール』のMAFアプリケーション用のPFXファイルの作成に関する項を参照してください。
-
次の図に示すように、「Windowsプラットフォーム」ダイアログに次の値を入力します。
-
Visual StudioソフトウェアとともにインストールされるWindows SDKの場所。
-
アプリケーションの署名に使用する証明書の場所およびパスワード(必要な場合)。MAFアプリケーションをデバッグ・モードとリリース・モードの両方でデプロイする場合は、これを「デバッグ」ダイアログと「リリース」ダイアログの両方で実行します。
JDeveloperの「ツール」メニューから「Windowsプラットフォーム」ダイアログにアクセスするには、図に示すように、「プリファレンス」、「モバイル・アプリケーション・フレームワーク」の順にクリックします。
-
図25-19 MAFアプリケーションをデプロイする場合の「Windowsプラットフォーム」の「プリファレンス」
「図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のデプロイメント・プロファイルを使用してアプリケーションをデプロイします。
ユニバーサルWindowsプラットフォームへのMAFアプリケーションのデプロイ時に行われる処理
「アプリケーションのローカル・マシンへのデプロイ」オプションと「アプリケーションのパッケージへのデプロイ」オプションのどちらを選択したかによって、MAFはアプリケーションをコンピュータまたはインストール・パッケージにデプロイします。
「アプリケーションのローカル・マシンへのデプロイ」オプションを選択した場合、MAFは使用しているマシンにアプリケーションをデプロイし、そこにアプリケーションをインストールします。次の図の前景は、リリース・モードでローカル・マシンにデプロイされたWorkBetterサンプル・アプリケーションの例です。次の図の背景では、Windows 10コンピュータの「アプリと機能」ページのインストール済アプリケーション内にWorkBetterサンプル・アプリケーションがリストされていることがわかります。
デバッグ・モードでデプロイしたMAFアプリケーション画面の左上に赤いアイコンが表示され、アプリケーションがデバッグ・モードであることを示します。リリース・モードでデプロイしたアプリケーションと同様に、このアプリケーションはWindows 10コンピュータの「アプリと機能」ページで表示とアンインストールを実行できます。
図25-20 Windowsローカル・マシンにリリース・モードでデプロイされたMAFアプリケーション
「図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
ディレクトリが生成されます。
アプリケーションの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
機能アーカイブ・ファイルでの作業には、次のタスクがあります。
-
機能アーカイブ・ファイルの作成: 機能アプリケーションをライブラリJARファイルとしてデプロイすることで機能アーカイブを作成します。
-
モバイル・アプリケーション作成時の機能アーカイブ・ファイルの使用: これにはFARのインポートと、インポートされた接続の再マッピングが含まれます。
-
FARの機能を含むモバイル・アプリケーションのデプロイ - これには、デプロイメント・テンプレート内の一意の名前が付けられたフォルダへのFARの解凍が含まれます。
注意:
デプロイメント・プロセス時にMAFはFARを生成します。別のアプリケーションでこのFARを使用する場合は、ビュー・コントローラ・プロジェクトのみをデプロイすればすみます。
機能アーカイブのデプロイメント・プロファイルの作成方法
アプリケーションの接続を作成してから、タスク内の手順に従って、機能アーカイブ用のデプロイメント・プロファイルを作成します。
「デプロイメント・プロファイルの作成」ダイアログを使用します。
始める前に:
アプリケーションの適切な接続を作成します。FARは様々な接続要件を持つ様々なアプリケーションで使用できるため、接続ソースまたは標準化された実際の接続名を表す接続名を選択します。
機能アーカイブのデプロイメント・プロファイルを作成するには:
機能アーカイブのデプロイメント・プロファイルのデプロイ方法
MAFが提供する「機能アーカイブJARファイルへデプロイします。」オプションを使用すると、JARファイルとしてFARをデプロイできます。タスク内の手順に従って、機能アーカイブ・デプロイメント・ファイルをデプロイします。
「デプロイメント・アクション」ダイアログでは、FARをJARファイルとしてデプロイできます。次の図に示すこのダイアログには、「機能アーカイブJARファイルへデプロイします。」という1つのデプロイメント・オプションのみがあります。
機能アーカイブのデプロイメント・プロファイルをデプロイするには:
機能アーカイブ・ファイルのデプロイメント・プロファイルをデプロイする場合の処理
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コンテンツの使用方法」を参照してください。
モバイル・アプリケーション・アーカイブ・ファイルの作成
新しいモバイル・アプリケーションを既存のモバイル・アプリケーションから作成するには、元のモバイル・アプリケーションをモバイル・アプリケーション・アーカイブ(.maa)ファイルとしてパッケージ化するか、この.maaから新しいモバイル・アプリケーションを作成します。
次のように既存のモバイル・アプリケーションから新しいモバイル・アプリケーションを作成できます。
-
元のモバイル・アプリケーションをモバイル・アプリケーション・アーカイブ(
.maa
)ファイルとしてパッケージ化します -
「アプリケーション・アーカイブからの新規アプリケーションの作成」の説明に従って、.maaファイルから新しいモバイル・アプリケーションを作成します。
.maa
ファイルによって、モバイル・アプリケーションの構造が保持されます。表25-4に、このファイルの内容を示します。
表25-4 モバイル・アプリケーション・アーカイブ・ファイルの内容
ディレクトリ | 説明 |
---|---|
|
次のようなメタデータ・ファイルを含む
|
|
ワークスペース内の各プロジェクトに対応するJARファイルが格納されます。たとえば、デフォルトのモバイル・アプリケーションを |
|
元のモバイル・アプリケーションの外部にあるアプリケーション・レベルのライブラリ(FARを含む)が格納されます。 |
|
|
|
次のディレクトリが含まれます。
|
表25-4にリストされたアーティファクトに加えて、.maa
ファイルには、元のモバイル・アプリケーションの内部にあるFARまたはJARファイル、およびその制御(.jws
)ファイルが格納されたフォルダが含まれます。「MAFアプリケーション・アーカイブ・ファイルをインポートする場合の処理」も参照してください。
注意:
.maa
ファイルを既存のアプリケーションにインポートすると、ワークスペースとプロジェクトのコンテナ・ファイル(それぞれ.jws
ファイルと.jpr
ファイル)が上書きされます。このため、MAF AMXページと構成ファイル(maf-application.xml
、maf-config.xml
、connections.xml
、adf-config.xml
など)に対して以前加えた変更の一部は保持されません。
モバイル・アプリケーション・アーカイブ・ファイルの作成方法
タスク内の手順に従って、モバイル・アプリケーション・アーカイブ・ウィザードを使用して.maa
ファイルを作成します。.maa
ファイルは、OJDeployを使用して作成することもできます。
モバイル・アプリケーションの作成後、JDeveloperによって、デフォルトのMAFアプリケーション・アーカイブ・デプロイメント・プロファイルが作成されます。モバイル・アプリケーション・アーカイブ・ウィザードを使用すると、.maa
ファイルを作成できます。
ヒント:
また、「コマンド行からのMAFアプリケーションのデプロイ」で説明されているように、OJDeployを使用して.maa
ファイルを作成することもできます。
モバイル・アプリケーション・アーカイブ・ファイルを作成するには:
-
「アプリケーション」→「デプロイ」→「新規デプロイメント・プロファイル」をクリックします。
-
「デプロイメント・プロファイルの作成」ダイアログで「MAFアプリケーション・アーカイブ」を選択し、「OK」をクリックします。
-
必要に応じて、「アプリケーション・アーカイブ・オプション」ページでモバイル・アプリケーション・アーカイブの名前を入力するか、デフォルトの名前(およびパス)をそのまま使用します。「OK」をクリックします。
-
必要に応じて、次を実行します。
-
「アプリケーション・ディスクリプタ」ページで、
META-INF
フォルダ(application_workspace\src\META-INF
)の内容に付けるファイル・グループ名を入力します(またはデフォルトの名前をそのまま使用します)。 -
この「アプリケーション・ディスクリプタ」ページの「コントリビュータ」サブページを選択して、ファイル・グループの内容を提供するディレクトリとJARファイルのリストを編集します。
-
「フィルタ」ページを使用して、
.maa
ファイルに含めるファイルの編集やコンテンツの組込みまたは除外ルールの設定を行います。 -
「プロファイルの依存性」ページを使用して、プロジェクト内の依存プロファイルを指定します。
-
モバイル・アプリケーションをMAFアプリケーション・アーカイブ・ファイルにパッケージ化するには、次の手順を実行します。
-
「アプリケーション」→「デプロイ」を選択し、「MAFアプリケーション・アーカイブ」デプロイメント・プロファイルを選択します。
-
「デプロイメント・アクション」ウィザードで、「アプリケーションのMAAへのデプロイ」を選択します。
-
「次へ」をクリックして、デプロイメント・サマリーを確認します。
-
「終了」をクリックします。
アプリケーション・アーカイブからの新規アプリケーションの作成
アプリケーション・アーカイブ・ファイルを使用して、様々なカスタマイズが容易になる新しいMAFアプリケーションを作成します。
開発者(および同僚やパートナ)は、アプリケーション・アーカイブ・ファイル(.maa
)を起点として新しいMAFアプリケーションを作成できます。.maa
ファイルからモバイル・アプリケーションを導出することによって、次のような様々なカスタマイズが可能になります。
-
アプリケーションへの一意のアプリケーションIDの付与(プッシュ通知を有効にする場合など)。
-
企業固有の資格証明または証明書を使用した、アプリケーションへの署名。
-
カスタマイズされたスプラッシュ画面とアプリケーション・アイコンによる、リソースの置換え。
MAFアプリケーション・アーカイブ(.maa
)・ファイル形式を使用すると、署名されていないモバイル・アプリケーションをサード・パーティに提供できます。
注意:
.maa
ファイルを既存のアプリケーションにインポートすると、ワークスペースとプロジェクトのコンテナ・ファイル(それぞれ.jws
ファイルと.jpr
ファイル)が上書きされます。このため、MAF AMXページと構成ファイル(maf-application.xml
、maf-config.xml
、connections.xml
、adf-config.xml
など)に対して以前加えた変更の一部は保持されません。
アプリケーション・アーカイブから新規アプリケーションを作成する方法
タスク内の手順に従って、「アーカイブ・ファイルからのMAFアプリケーション」オプションを使用して、.maa
ファイルを新しいモバイル・アプリケーションにインポートします。
.maa
ファイルを新しいモバイル・アプリケーションにインポートします。
アプリケーション・アーカイブから新しいアプリケーションを作成するには、次の手順を実行します。
-
「ファイル」→「新規」を選択します。
-
「新規ギャラリ」で、「アプリケーション」→「アーカイブ・ファイルからのMAFアプリケーション」を選択します。
注意:
または、「ファイル」→「インポート」→「アーカイブ・ファイルからのMAFアプリケーション」を選択してもかまいません。
-
「場所」ページで、「MAAファイル」フィールドの「参照」を選択し、MAAファイルの場所に移動します。
-
必要に応じて、次を実行するか、デフォルト値をそのまま使用します。
-
.maa
ファイルから導出したモバイル・アプリケーションの名前を「アプリケーション・ファイル」フィールドに入力します。 -
「参照」をクリックして、モバイル・アプリケーションのディレクトリを取得します。
-
-
「次へ」をクリックしてインポートのサマリー情報を確認し、「終了」をクリックします。
MAFアプリケーション・アーカイブ・ファイルをインポートする場合の処理
MAFは、アプリケーション・フォルダを作成して、そこに関連ディレクトリとそのコンテンツを解凍します。「プロジェクト」ディレクトリ内のJARファイルごとに、MAFはプロジェクト・フォルダを作成して、JARファイルのコンテンツを該当するプロジェクト・フォルダに解凍します。
MAFでは、.maa
ファイルのインポート後に次のことを実行します。
-
アプリケーション・フォルダを作成します。
-
ワークスペース・コンテナ(
.jws
)・ファイルを.maa
ファイルからアプリケーション・ファイルに解凍し、ユーザー指定の値に従ってその名前を変更します。 -
adf
ディレクトリとその内容をアプリケーション・フォルダに解凍します。このディレクトリの名前は、.adf
に変更されます。 -
META-INF
ディレクトリとその内容をアプリケーション・フォルダに解凍し、アプリケーション・フォルダのsrc
ディレクトリ内に配置します。 -
ExternalLibs
ディレクトリとその内容をアプリケーション・フォルダに解凍します。注意:
このディレクトリに格納された外部リソースはすべて、
.maa
ファイルとしてパッケージ化された(そしてアプリケーションにインポートされた)モバイル・アプリケーション内で使用できますが、これらのリソースへの参照は、.maa
ファイルから導出されたモバイル・アプリケーションに対しては無効になります。 -
resources
ディレクトリをアプリケーション・フォルダに解凍します。 -
元のモバイル・アプリケーションの内部にあるFAR (またはその他のライブラリ)を含む、すべてのフォルダを解凍します。MAFによって、これらのアーティファクトの元の場所が保持されます。
-
元のモバイル・アプリケーションの
Projects
ディレクトリ内にあるJARファイルごとに、MAFは次を実行します。-
JARファイルの名前(
.jar
拡張子を除く)に対応するアプリケーション・ディレクトリの下に、プロジェクト・フォルダを作成します。 -
JARファイルの内容を、適切なプロジェクト・フォルダ内に解凍します。MAFによって、これらのプロジェクト・フォルダ内に次のものが格納されます。
-
元の
.jpr
ファイル。 -
META-INF
、public_html
、src
、adfmsrc
などの標準的なディレクトリ。 -
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引数
引数 | 説明 |
---|---|
|
Android、WindowsまたはiOSデプロイメント・プロファイルの名前。次にその例を示します。 ojdeploy deployToSimulator -profile iosDeployProfile ... |
|
モバイル・アプリケーション・ワークスペースのコンテナ( ... -workspace /usr/jsmith/mywork/Application1/Application1.jws モバイル・アプリケーションをモバイル・アプリケーション・アーカイブとしてパッケージ化するには: ojdeploy deployToApplicationArchive -profile applicationArchiveProfile -workspace /usr/jdoe/Application1/application1.jws |
|
ojdeploy deployToFeatureArchive -profile farProfileName -project ViewController ... |
|
バッチ・デプロイ用のビルド・ファイルへのフルパス。 |
|
ビルドファイルの出力XMLスキーマ。 |
表25-5に示した引数の他に、『Oracle JDeveloperによるアプリケーションの開発』のコマンドラインからのデプロイで説明されているOJDeployオプションを使用することもできます。
注意:
次のオプションはサポートされていません。
-
-forcerewrite
-
-nocompile
-
-nodatasources
-
-nodepdendents
-
-outputfile
-
-updatewebxmlejbrefs
表25-6に、MAFのデプロイメント・コマンドでOJDeployオプションを使用する方法の例を示します。
表25-6 MAFのデプロイメント用のOJDeployオプション
オプション | 説明 |
---|---|
|
コンパイルの前に、プロジェクト出力ディレクトリからすべてのファイルを削除します。次にその例を示します。 ojdeploy deployToSimulator -profile iosDeployProfile -workspace /usr/jsmith/jdeveloper/mywork/Application1.jws -clean |
|
標準出力とエラー・ロギングのストリームを、それぞれのプロファイルとプロジェクトのファイルにリダイレクトします。次にその例を示します。 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アプリケーション・アーカイブのパッケージ化に使用するマクロ
マクロ | 説明 |
---|---|
|
アプリケーション・ワークスペースのコンテナ・ファイルの名前( |
|
アプリケーション・ワークスペースのコンテナ( |
|
デプロイするプロファイルの名前。 |
|
プロファイルのデフォルトのデプロイメント・ディレクトリ。 |
|
このパラメータを使用して、現在のojdeployディレクトリをオーバーライドします。ビルド・スクリプトでbasedir属性を使用して、現在のojdeployディレクトリをオーバーライドできます。 |