The following topics introduce the new and changed features of Oracle Mobile Application Development Framework (Oracle MAF) and other significant changes, which are described in this guide.
Oracle MAF Release 2.5.0 includes the following new and changed development features, which are described in this guide.
This release of MAF requires you to install the MAF extension in Oracle JDeveloper 12c (188.8.131.52.0). See Installing Oracle JDeveloper Studio in Installing Oracle JDeveloper and Installing Mobile Application Framework with JDeveloper.
For MAF applications that you deploy to the iOS platform, note the following:
You need Xcode 9.x to build and deploy your MAF applications. Upgrade your installation to Xcode 9.x, as described in Using Xcode 9.x with MAF 2.5.0.
You can now specify version and build numbers for the MAF applications you deploy to the iOS platform using new input fields that the iOS deployment profile exposes. See How to Create an iOS Deployment Profile.
Due to changes in Apple iTunes, MAF removed the Deploy to iTunes for Synchronization to device deployment action option in this release. Deploying an iOS Application has been revised to describe how you now deploy a MAF application to an iOS device that is connected to your development computer using drag and drop.
The Application Images page in the iOS deployment profile dialog now exposes a Marketing Icon Image input field where you can override the default marketing icon image provided by MAF with your own icon. The icon must be in PNG format and 1024 x 1024 pixels in size. See Adding a Custom Image to an iOS Application.
For MAF applications that you deploy to the Android platform, note the following:
MAF now supports the deployment of MAF applications to devices that use Android 8.0. See Deploying a MAF Application to the Android Platform.
You must install Android API Level 26 to build and deploy MAF applications to the Android platform. Ensure that you install the Android API Level 26 into the Android SDK Location that you have specified in your MAF preferences, as described in Setting Up Development Tools for the Android Platform. As a result of this change, MAF applications can no longer share
file:// URLs to external applications and restrictions apply on the directory location of files that you display to an external viewer using the DeviceFeatures data control’s
displayFile method, as described in How to Use the displayFile Method to Enable Displaying Files.
MAF now includes a new core plugin “Storage Access” (
maf-cordova-plugin-storage-access) that controls the storage permissions of MAF applications you deploy to the Android platform. MAF enables this plugin in new applications and in applications that you migrate to this release. When enabled, MAF applications that you deploy to Android devices can access local storage if granted the Storage permission by users. See Introduction to Using Plugins in MAF Applications.
MAF now enables multidex support by default in MAF applications that you deploy to Android. Configure your Android deployment profile, as described in Deploying a MAF Application to the Android Platform, if you want to disable multidex support.
MAF’s Android deployment profile now includes an Allow Backup checkbox that, when selected (the default value), allows your MAF application to participate in Android’s backup and restore infrastructure. See Deploying a MAF Application to the Android Platform.
MAF now uses standard JDeveloper constructs to deploy MAF applications to the Universal Windows Platform, which means that you can deploy your application from the command line, as described in Deploying MAF Applications from the Command Line Using OJDeploy. The number of log levels that you can specify when you deploy an application has also increased. You configure the log level you want to use (Quiet, Minimal, and so on) in the Windows deployment profile. See Working with Deployment Profiles.
This release updates the Cordova engine versions that MAF uses (Android: 6.2.3, iOS: 4.5.0, and Windows: 5.0.0). For more information about Cordova plugins in MAF applications, see Introduction to Using Plugins in MAF Applications.
MAF applications now evaluate EL expressions in the Java VM layer where previously this evaluation took place in the Web View layer. MAF applications that you migrate to this release use the new behavior (evaluate EL expressions in the Java VM layer). If your MAF application includes custom components, you must now create a
/META-INF/amx-tag-libraries.xml file that describes the custom components your MAF application uses. See Creating Custom UI Components. You can configure new or migrated MAF applications to evaluate EL expressions in the Web View layer. See Evaluating EL Expressions in the Java VM Layer.
inputDate component includes a new attribute (
legacyMode) that configures the behavior of the
inputDate component on MAF applications deployed to Android devices. When set to
true, upward pointing input arrows decrease the
inputDate value and the downward pointing arrow increases the
inputDate value. The default value of
false. See How to Use the Input Date Component.
This document has been updated in several ways for this release. Following are the sections that have been added or changed.
Introduction to the Client Data Model in a MAF Application revised with a recommendation that you optimize the REST services you consume in the MAF client data model so that the JSON payloads sent to MAF are not overly complex.
Overview of Creating a Client Data Model in a MAF Application revised to note that query parameters in the MAF client data model require URL encoding so that, for example, you must configure
New%20York,%20NY rather than
New York, NY for a location query parameter.
Configuring Proxy Settings for Apache Cordova Plugman added to describe how to pass proxy server settings to the plugman utility that MAF invokes to download plugins and other dependencies when you register a plugin in your MAF application.