3 MAFアプリケーションのコンテンツの構成

この章では、maf-application.xmlファイルとmaf-features.xmlファイルを構成して、MAFアプリケーションのアプリケーション名やMAFアプリケーションに含めるアプリケーション機能などの情報を定義する方法について説明します。

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

MAFアプリケーションの表示情報の構成の概要

MAFアプリケーションのエンド・ユーザーに表示される表示情報を構成するには、maf-application.xmlファイルの概要エディタで値を設定します。

アプリケーションに関して入力する情報の種類には、表示名、アプリケーションの説明、アプリケーションのバージョン番号などがあります。MAFアプリケーションに含めたり、他のMAFアプリケーションで使用するために配布したりする個々のアプリケーション機能には、同じような情報を入力できます。また、MAFアプリケーションのナビゲーション・バーやSpringboardへのレンダリング時にアプリケーション機能によって表示されるアイコンを指定することもできます。

MAFアプリケーションの表示プロパティの設定

「アプリケーション」ページを使用して、MAFアプリケーションの表示を設定できます。

図はmaf-application.xmlファイルの概要エディタの「アプリケーション」ページを示しています。このページではMAFアプリケーションの表示名やアプリケーションIDを設定します。

図3-1 MAFアプリケーションの基本情報の設定

図3-1の説明が続きます
「図3-1 MAFアプリケーションの基本情報の設定」の説明

MAFアプリケーションの基本情報を設定する手順:

  1. 「アプリケーション」ページを選択します。
  2. 「アプリケーション」ウィンドウで、「アプリケーション・リソース」パネルを開きます。
  3. 「アプリケーション・リソース」パネルでDescriptorsを展開し、ADF META-INFを展開します。
  4. maf-application.xmlファイルをダブルクリックし、表示される概要エディタで「アプリケーション」ナビゲーション・タブをクリックします。
  5. 「名前」フィールドに、アプリケーションの表示名を入力します。

    アプリケーションをローカライズする場合は、リソース・バンドルから値を選択できます。

    注意:

    MAFでは、このフィールドに入力した値をiOSアーカイブ(.ipaまたは.app)ファイルの名前として使用します。このファイルは、iOSデバイスまたはシミュレータにアプリケーションをデプロイすると作成されます。

  6. 「ID」フィールドに、一意のIDを入力します。

    名前の競合を避けるため、AndroidとiOSでは、リバース・パッケージ名が使用されます(例: com.company.application)。JDeveloperによって、アプリケーション名の前には、com.companyがリバースパッケージとして付加されますが、この値は別の値で上書きできます。ただし、上書きする値は一意で、iOSとAndroidの両方のデバイスのIDガイドラインを順守するものでなくてはなりません。iOSアプリケーションについては、『iOS Team Administration Guide』 (http://developer.apple.com/library/iosのiOS Developer Libraryで入手可能)の「Creating and Configuring App IDs」を参照してください。Androidについては、Android開発者のWebサイト(http://developer.android.com/guide/topics/manifest/manifest-intro.html)で入手可能な「The AndroidManifest.xml File」を参照してください。AndroidプラットフォームへのMAFアプリケーションのデプロイに関する項および「iOSデプロイメント・プロファイルの作成方法」で説明するように、このIDはデプロイメント・プロファイル内で上書きできます。

    注意:

    Androidデバイスまたはエミュレータにアプリケーションが正しくデプロイされるようにするには、IDの先頭を数字やピリオドではなく、文字にする必要があります。たとえば、IDが925090のように(com.company.925090)完全に数値で構成されている場合はデプロイに失敗します。hello925090 (com.company.hello925090)のように先頭が文字列のIDは正常にデプロイされます。

  7. 「説明」フィールドで、アプリケーション関する説明を入力します。
  8. 「バージョン」フィールドに、バージョンを入力します。
  9. 「ベンダー」フィールドに、このアプリケーションを最初に作成したベンダーの名前を入力します。
  10. 「ライフサイクル・イベント・リスナー」フィールドで、MAFアプリケーションのライフサイクル・イベントに応じて実行されるコードが記述されたクラスを入力します。新規作成したMAFアプリケーションには、デフォルトでapplication.LifeCycleListenerImplが指定されます。

    ライフサイクル・リスナーの詳細は、「MAFアプリケーションでのライフサイクル・リスナーの使用方法」を参照してください。

iOSでのMAFアプリケーションの起動画面の変更

MAFでは、iOSデバイスでMAFアプリケーションを起動したときに、エンド・ユーザーに表示する起動画面を表示するためのHTMLページが用意されています。

このHTMLページは、MAFアプリケーションが実行するiOSデバイス上でレスポンシブにレンダリングされるように設計されています。つまり、このページは、用意されている画面を使用して、著作権情報やロゴをデバイスに適したサイズで表示します。

かわりの起動画面を定義する場合はカスタムHTMLページを作成できます。これは、maf-application.xmlファイルの概要エディタにおいて「アプリケーション」ページの「起動画面」セクションで行います。作成するHTMLページはMAFアプリケーションのApplicationController/public_htmlディレクトリに保存されます。起動画面として使用するHTMLページを作成した場合、次のXMLエントリがmaf-application.xmlファイルのソースに表示されます。

...
  <adfmf:configuration>
    <adfmf:launchScreen url="custom-launch-screen.html"/>
  </adfmf:configuration>
...

URL属性はApplicationController/public_htmlディレクトリに対して相対的にパスを定義し、アプリケーションはこれを使用して、起動画面として作成されたHTMLページを探します。

iOSデバイス用のデフォルト起動画面としてMAFがレンダリングするHTMLページを確認して、起動画面としてレンダリングされるカスタムHTMLページを作成するヒントを得ることができます。デフォルト起動画面(maf-launch-screen.html)は、最初にMAFアプリケーションをデプロイするために使用するデプロイメント・プロファイルの次のサブディレクトリにあります。

.../FARs/OracleStandardADFmfUiComponents/public_html/

アプリケーション機能の表示プロパティの設定

各MAFアプリケーションには、少なくとも1つのアプリケーション機能が必要です。アプリケーション機能はそれぞれ別個に(MAFアプリケーション自体からも独立して)開発できます。

maf-feature.xmlファイルの概要エディタでは、<adfmf:features>の子要素を定義して、アプリケーション機能ごとにそれぞれの名前とIDを割り当て、コンテンツの実装方法を設定することで、アプリケーション機能を区別できます。アプリケーション機能の概要エディタを使用すると、MAFアプリケーション内のアプリケーション機能のランタイム表示を制御したり、アプリケーション機能がユーザー認証を必要とするタイミングを指定することもできます。

図は、WorkBetterサンプル・アプリケーションで使用される人々アプリケーション機能の概要エディタの「一般」タブを示しています。このタブを使用して、アプリケーション機能の名前や、Springboardとナビゲーション・バーに表示されるアイコンなどの情報を指定します。

図3-2 maf-feature.xmlファイル内のアプリケーション機能の「一般」タブ

図3-2の説明が続きます
「図3-2 maf-feature.xmlファイル内のアプリケーション機能の「一般」タブ」の説明

始める前に:

アプリケーション機能で、MAFによって提供されるデフォルト・イメージではなく、ナビゲーション・バーやSpringboardのカスタム・イメージを使用する場合、これらのイメージは、Android開発者のWebサイト(http://developer.android.com/design/style/iconography.html)および、iOS Developer Library (http://developer.apple.com/library/ios/navigation/)で入手できる『iOS Human Interface Guidelines』の「Custom Icon and Image Creation Guidelines」の章に示されている仕様に従って作成する必要があります。

これらのイメージは、ビュー・コントローラ・プロジェクトのpublic_htmlディレクトリに配置します。「外部リソースの選択に関する必知事項」も参照してください。

さらに、maf-feature.xmlファイルを開いて、「一般」タブを選択する必要があります。

アプリケーション機能の基本情報を設定するには:

  1. 「一般」タブを選択します。
  2. 「機能」セクションで「追加」アイコンをクリックします。
  3. 「MAF機能の作成」ダイアログに必要な情報を入力し、「OK」をクリックします。

    「MAF機能の作成」ダイアログに必要な情報を入力する手順:

    • 「機能名」フィールドに、アプリケーション機能の表示名を入力します。

    • 「機能ID」フィールドに、アプリケーション機能の一意の識別子を入力します。

    • 必要に応じて、アプリケーション機能の場所を、public_htmlディレクトリ(デフォルトの親ディレクトリ)内の任意のディレクトリに変更します。この場所を「ディレクトリ」フィールドに入力します。

    • 「対応する機能参照をmaf-application.xmlに追加」チェック・ボックスを選択し、新しく定義したアプリケーション機能をMAFアプリケーションに追加します。

  4. (オプション)概要エディタの「一般」タブで、「ベンダー」フィールドに、アプリケーション機能を最初に作成したベンダーの名前を入力します。
  5. (オプション)「バージョン」フィールドに、アプリケーション機能のバージョン番号を入力します。
  6. (オプション)「説明」フィールドに、アプリケーションの目的の簡単な説明を入力します。
  7. (オプション)「ライフサイクル・イベント・リスナー」の「クラスおよびパッケージ・ブラウザ」を使用して、完全修飾クラス名(oracle.adfmf.featureのようにパッケージを含む)を入力して、イベントを起動、停止、休止および休止から戻すためのランタイム・コールを有効にします。
  8. (オプション)「ナビゲーション・バー・アイコン」および「スプリングボード・イメージ」フィールドで、ナビゲーション・バーのアイコンとして使用するイメージと、スプリングボードの表示アイコンとして使用するイメージを、プロジェクトから参照して選択します。「アプリケーション」ウィンドウから「ファイルの場所」フィールドにイメージ・ファイルをドラッグ・アンド・ドロップすることもできます。