Android Requirements

Official Content
This documentation is valid for:

This article details the requirements for developing Android applications with GeneXus and also the requirements of the target devices.

Automatic Installation (Recommended)

We provide a setup that automatically downloads and installs all Android SDK requirements. Note that you'll also be able to access this setup through the Update Android SDK tool menu option from Genexus IDE.

Manual Installation

We discourage installing the Android SDK components manually, but it some cases it may be necessary. So we provide you with the information you'll need to do it.

Step 1 - Installing external software

  • Oracle JDK  version 11 or Open JDK 11  (Use the 64-bit version if you are on a 64-bit operating system).
  • Android SDK — Only the command line tools are needed.

Note: It is strongly recommended to install the Android SDK (in any directory) with no blank spaces or any special characters

Step 2 - Installing Android components

Note: The tool known as "Android SDK Manager" program has been deprecated by Google and is no longer available

You'll have two options, using the command line tool "sdkmanager" provided by the Android SDK or downloading Android Studio and using the "SDK Manager" built-in. In either case, you'll have to install the following components. Each component per upgrade can be found in <genexus_directory>/Android/RequirementsTool/android_requirements.txt.

Info: Google Play requires that new apps target at least Android 12 (API level 31) from August 2022, and that app updates target Android 12 from November 2022. This implies that you must use GeneXus 17 upgrade 7 or higher to be able to deploy to Google Play. More information in Play Console Help answer.

Detailed list with the requirements of the Development Environment

GeneXus 18 or higher users.
Component Required Version Comments
Android SDK Tools 26.1.1 or higher Refer to Update Android SDK tool option.
Android SDK Platform-Tools 31.0.3 or higher -
Android SDK Build-tools 33.0.0 exactly -
Android Emulator 30.7.3 -
Android 13(API 33) Any

-

- SDK Platform 31.0.3 or higher -
- Google APIs Intel x86 Atom System Image Any If you have an Intel-based computer, use the Intel x86 System Image. Otherwise, use the ARM EABI v7a System Image.
If there are any AVD already created with the previous requirement (Intel x86 Atom System Image), it will not be re-created. You may consider deleting it from the AVD Manager and re-run the app from GeneXus to create a new one.
Android Support Repository 45 or higher -
Google Repository 44 or higher -
Intel x86 Emulator Accelerator (HAXM installer) Any If HAXM cannot be installed, it is necessary to install Android 5.0 (API 21), including SDK Platform and ARM EABI v7a System Image.

Step 3 - Installing HAXM

This step is only necessary if your computer has an Intel-based CPU.

Once you have finished downloading the requirements, you must install HAXM. Then, open the <Android_SDK_Installation_Directory>/Extras/Intel/Hardware_Acelerated_Execution_Manager directory, execute the intelhaxm-android.exe installer, and follow its instructions.

HAXM installer

With this configuration, you can run Android applications on your device (if it is plugged into your computer).

HAXM only works in Intel processors if the Hyper-V feature of Windows platform is turned off and VT-x is enabled in your BIOS.

  • In order to check if Hyper-V is disabled, open Control Panel > Programs > Turn Windows features on or off, and then, in the pop-up windows, make sure that Hyper-V is not checked.
  • Detailed information about how to enable VT-x from the BIOS can be found on this post and this one for troubleshooting.
  • In case of Windows 11, the features Windows Hypervisor Platform and Virtual Machine Platform should also turned off.

Supported OS versions by the generated applications

  • The generated Android application works in devices with API 21 (Android 5.0, Lollipop) or higher
  • There is no "maximum" OS version supported for a given GeneXus upgrade. Generated applications will still function in OS versions released after the release of the GeneXus upgrade. However, new features of these newer OS versions will require a new GeneXus upgrade release to be fully supported.

Tips

  • The GeneXus setup program searches for the Android SDK version in the Windows registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools" for 64 bits Windows and in "HKEY_LOCAL_MACHINE\SOFTWARE\Android SDK Tools" for 32 bits Windows.
  • Once the SDK Directory is found it searches the file "<Android_SDK_Installation_Directory>\tools\source.properties" to check that the property "Pkg.Revision=" is 23.0.2

Notes

  • If you are using an Intel processor and the HAXM installer produces the following error:
    HAXM installation error.
    You must check that VT-x (Virtualization) is enabled in your BIOS and that you haven't installed HyperV.
  • If you are using Parallels to run Genexus in a Windows VM, do NOT place the Android SDK you use on your host machine or in your model directory. The Android Gradle Plugin does not support this, and it may lead to strange behavior while compiling (for example, your computer could stop working).
  • Solutions for the case that a 404 or 500.19 error occurs.

Hardware Requirements

As stated above, Android SDK requires at least 3GB of free space on your disk.

2 GB of RAM are required by default for compilation approx; this value can be changed in the Android specific properties.

Offline Compilation

The compilation process uses the Gradle build system which needs network connectivity to download dependencies. If your environment does not have network connectivity the build will cancel with an error similar to the following:

error: FAILURE: Build failed with an exception.
error:
error: * What went wrong:
error: A problem occurred configuring root project 'Android'.
error: > Could not resolve all artifacts for configuration ':classpath'.
error: > Could not resolve com.android.tools.build:gradle:3.4.1.
error: Required by:
error: project :
error: > Could not resolve com.android.tools.build:gradle:3.4.1.
error: > Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/
build/gradle/3.4.1/gradle-3.4.1.pom'.
error: > Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/
gradle/3.4.1/gradle-3.4.1.pom'.

You can add the gradle --offline option to the Gradle Options property to force gradle to work offline and do not download any dependency. You will need to previously download all the dependencies needed and update the GeneXus installation; follow the steps detailed in SAC #47748.

See Also