Requesting ES3 on a hardware mobile device, works well.But when requesting it from the emulator, it fails.The host machine is perfectly capable of doing OpenGL ES3.0, ES3.1 and ES3.2 as can be seen from glxinfo:
To set up a typical MAF development environment that consists of an IDE, mobile platform-specific tools, and, possibly, a mobile device, follow steps described in Section 2.2, "Prerequisites for Developing MAF Applications."
For complete list of supported versions of development and runtime tools, see Oracle Mobile Application Framework Certification Matrix by following the Certification Information link on the MAF documentation page at -tools/maf/documentation/.
Before you start deploying your application to a development environment (see the "Getting Started with Mobile Application Development" chapter in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition)), decide whether you would like to use a mobile device or its simulator: if you are to use a simulator, see Section 2.4.3, "How to Set Up an iPhone or iPad Simulator"; if your goal is to deploy to a mobile device, ensure that, in addition to the components included in the preceding list, you have the following available:
A computer running an operating system listed in the Desktop OS Requirements section of the Oracle Mobile Application Framework Certification Matrix that you access by following the Certification Information link on the MAF documentation page at -tools/maf/documentation/.
Before you start deploying your application to a development environment (see the "Getting Started with Mobile Application Development" chapter in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition)), decide whether you would like to use a mobile device or its emulator: if you are to use an emulator, see Section 2.5.3, "How to Set Up an Android Emulator"; if your goal is to deploy to a mobile device, ensure that, in addition to the components included in the preceding list, you have the following available:
For successful packaging and deployment of your application to target platforms supported by MAF, OEPE must be provided with information such as the name of the platform and directories on your development computer that contain the platform-specific tools and data.
Depending on your target platform, download and configure either the Android SDK (see Section 2.5.1, "How to Install the Android SDK") or iOS SDK and Xcode (see Section 2.4.1, "How to Install Xcode and iOS SDK").
In the Preferences dialog, open the folder Oracle > Mobile Application Framework > Android or Oracle > Mobile Application Framework > iOS from the tree to open a page that contains the path and configuration parameters for the supported platforms.
Each platform-specific page hosts the preferences for the platform SDK (Android or iOS), collecting any necessary information such as the path that MAF needs to compile and deploy either Android or iOS projects:
For Android platform, specify the Android SDK location on your computer, the local directory of your target Android platform, and provide information on the signing credentials by selecting Android Keystores from the Android Platform section of the tree.
For iOS platform, specify the location of the Xcodebuild utility. For more information, see "How to Deploy an iOS Application to an iOS Simulator" in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition).
In addition to general-purpose tools listed in Section 2.2, "Prerequisites for Developing MAF Applications," you might want to set up an iPhone or iPad when getting ready for development of a MAF application for the iOS platform (see Section 2.4.2, "How to Set Up an iPhone or iPad").
Since iPhone and iPad simulators are included in the iOS SDK installation, you do not need to separately install them. For more information, see Section 2.4.3, "How to Set Up an iPhone or iPad Simulator."
After installing Xcode, you have to run it at least once and complete the Apple licensing and setup dialogs. If these steps are not performed, any build and deploy cycle from OEPE to Xcode or a device simulator fails with a "Return code 69" error.
In your MAF application development and deployment, you can use either the iPhone, iPad, or their simulators (see Section 2.4.3, "How to Set Up an iPhone or iPad Simulator"). If you are planning to use an actual iPhone or iPad, which is preferable for testing (see the "Testing MAF Applications" section in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition)), you need to connect it to your computer to establish a link between the two devices.
To deploy to an iOS-powered device, you need to have an iOS-powered device with a valid license, certificates, and distribution profiles. For more information, see the "Deploying Mobile Applications" chapter in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition).
In your MAF application development and deployment, you can use either the iOS-powered device itself (see Section 2.4.2, "How to Set Up an iPhone or iPad") or its simulator. Deploying to a simulator is usually much faster than deploying to a device, and it also means that you do not have to sign the application first.
If you are planning to use web services in your application and you are behind a corporate firewall, you might need to configure the external network access. You do so by modifying the network settings in the System Preferences on your development computer. For more information, see the "Configuring the Browser Proxy Information" section in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition).
In addition to the general-purpose tools listed in Section 2.2, "Prerequisites for Developing MAF Applications," you might want to set up an Android-powered device when getting ready for development of a MAF application for the Android platform (see Section 2.5.2, "How to Set Up an Android-Powered Device").
Since emulators are included in the Android SDK installation, you do not need to separately install them. However, you cannot use an emulator until you create its configuration (see Section 2.5.3, "How to Set Up an Android Emulator").
Android SDK includes the development tools that you need to build applications for Android-powered devices. Since the Android SDK is modular, it allows you to download components separately depending on your target Android platform and your application requirements.
In your MAF application development and deployment, you can use either the Android device itself, which is preferable for testing (see the "Testing MAF Applications" section in Developing Mobile Applications with Oracle Mobile Application Framework (OEPE Edition)), or an emulator (see Section 2.5.3, "How to Set Up an Android Emulator").
Your target Android-powered device might not be listed in the USB device driver's.inf file, resulting in the failure to install the Android Debug Bridge (ADB). You can eliminate this issue as follows:
In your MAF application development and deployment, you can use either the Android device itself (see Section 2.5.2, "How to Set Up an Android-Powered Device") or its emulator. Deploying to an emulator is usually much faster than deploying to a device, and it also means that you do not have to sign the application first.
For information on how to create an emulator configuration called Android Virtual Device (AVD), follow the instructions from the "Managing Virtual Devices" section of the Android Developers website at When creating an AVD through the Create New Android Virtual Device dialog (see "Managing AVDs with AVD Manager" at -avds.html), review all the settings to ensure that configuration matches what you are planning to emulate. In particular, you should verify the following:
Default settings for the Hardware field (see the "Hardware Options" table at -avds.html#hardwareopts) should be acceptable for a typical MAF application. For additional hardware capabilities you may want to use in your application, such as cameras or geolocation services, create new properties.
You can reduce the emulator's load time by saving the emulator state or reusing the saved state. To do so, you manipulate the avd files or folders that are located in the C:\Users\username\.android\avd directory (on a Windows computer). Each avd folder contains several files, such as userdata.img, userdata.qemu.img, and cache.img. You can copy the cache.img file to another emulator's avd folder to use that state with another emulator.
From the Android emulator, you can access your host computer through the 10.0.2.2 IP address. To connect to the emulator from the host computer, you have to execute the adb command from a command line on your development computer or from a script to set up the port forwarding.
The Intel HAXM is available for computers running Microsoft Windows, Mac OS X, and a separate kernel-based virtual machine option (KRM) for Linux. See -us/android/articles/intel-hardware-accelerated-execution-manager to access installation guides and detailed descriptions of system requirements for each operating system.
To download the Intel HAXM, either use the Android SDK Manager (see the "Speeding Up the Android Emulator on Intel Architecture" article available at -us/android/articles/speeding-up-the-android-emulator-on-intel-architecture) or use the following Intel locations:
To install the Intel HAXM, follow steps described in the "Speeding Up the Android Emulator on Intel Architecture" article available at -us/android/articles/speeding-up-the-android-emulator-on-intel-architecture. Particularly important is to configure AVD (see Section 2.5.3.2.1, "Configuring AVD for Intel HAXM").
When enabling the Intel HAXM, ensure that you download the Intel system image for the Android API level using the Android SDK Manager (see Figure 2-1). As described in "Speeding Up the Android Emulator on Intel Architecture" article at -us/android/articles/speeding-up-the-android-emulator-on-intel-architecture:
7fc3f7cf58