Oracle Mobile Application Framework 2.1.0の新機能
Java 8(compact2プロファイル)のサポート
MAF 2.1.0は64ビットのJava 8 VMを搭載しているため、最近になって改良されたJavaの機能を使用できるほか、Apple App Storeの64ビット要件も満たします。また、Java 8がサポートされるため、Lambda式、ジェネリクスを使用したコレクション、Base64エンコーダ/デコーダなどの機能を活用した開発が可能となっています。
Java 8 compact2プロファイルについて詳しくは、
http://docs.oracle.com/javase/8/docs/technotes/guides/compactprofiles/compactprofiles.htmlを参照してください。
Cordovaのアップグレード
MAF 2.1.0では、Android向けにCordova 3.6.3、iOS向けにCordova 3.7.0が使用されていますが、これによりMAFアプリケーションに組み込めるプラグインの数が劇的に増加します。
新しいCordovaプラグインのサポート
MAF 2.1.0ではCordovaプラグインをかなり簡単に使用できるようになっています。Oracle JDeveloper MAF拡張では、互換性のあるプラグインのビルドやMAFアプリケーションへの組込みを、plugmanコマンドライン・インタフェースを使用して実行します。MAFアプリケーションを開発する場合は、プラグインのソース・コードの場所を指定するだけで、プラグインを独自開発したり、プラグイン・リポジトリからプラグインをダウンロードしたりできます。
Xcode 6のサポート
MAF 2.1.0を使用する場合は、iOS 8.1デバイスおよびシミュレータに対するアプリケーションのビルド、テスト、デプロイ機能を提供するXcode 6が必要です。
Android 5.0のサポート
MAF 2.1.0は、Android 5.0デバイスおよびシミュレータに対するアプリケーションのビルド、テスト、デプロイ機能を提供するAndroid 5.0 SDKを使用して構築されています。
リモートURLからのMAFコンテナJavaScript APIへのアクセスのサポート
MAF 2.1.0では、サーバーでレンダリングされMAFコンテナに表示されるWebアプリケーションから、MAFコンテナ内のJavaScript APIにアクセスできます。そのため、APIをコールしてEL式を設定および取得したり、CordovaプラグインAPIをコールしてデバイス機能にアクセスしたり、といったことが可能です。MAFコンテナJava APIには、invokeMethod JavaScript APIを使用してアクセスすることもできます。
pageFlowScope変数のタスク・フロー境界への制限のサポート
MAF 2.1.0では、pageFlowScope変数のスコープをバウンド・タスク・フローのみに制限することができます。1つのバウンド・タスク・フローで変数が更新されても、別のバウンド・タスク・フローの同名のpageFlowScope変数には影響しません。この動作を適用するには、次のフラグを設定する必要があります。
<page-flow-scope-behavior>
<push-new/>
</page-flow-scope-behavior>
このフラグを設定しないと、以前のMAFリリースと同じデフォルト動作が適用されます。そのため、2つ目のバウンド・タスク・フローの変数に対して行った変更が1つ目のバウンド・タスク・フローの変数に影響します。