NeoMAD 4.4 release notes

September 01, 2017

Android Studio build chain

NeoMAD now uses the Android Gradle build chain to compile android projects.

Customized AndroidStudio project templates

Everything may be changed inside android projet templates (build.gradle) in order to add dependencies, aar libraries … using the new URS attribute templatePath in the <specific><android> tag.

A custom template directory can be set instead of the NeoMAD default one which can be found in <NeoMAD installation directory>/platforms/android/AndroidStudio/templates. Be sure to start from the last version of this template directory when customizing the templates because NeoMAD needs to substitute some template keys inside the files of this folder.

iOS11 Ready

This version of NeoMAD is compatible with Xcode8. Generated binaries can be installed on devices with iOS11 Operating System. Some bugs that appeared before this version on iOS11 have been fixed in this release:

  • Fix a ComboBox crash that occured when there is a too large number of items
  • Fix GridView, ListView, RadioButton and RadioGroup to display the background below the view
  • Fix Screen to scroll when opening a keyboard while clicking on a TextField to keep the field in the visible part of the screen
  • Fix Dialog to scroll when opening a keyboard while clicking on a TextField to keep the field in the visible part of the screen
  • Fix Signature step failure with Xcode 9

Android 8

APIs and BuildChain have been tested to be compliant with the latest Android SDK 8. No bug has been found in the NeoMAD build chain or libraries.

Better memory stability in iOS

Some parts of code in Objective-C needs long loops. In Java, every lap in loops releases memory. In objective-C, developers have to write a special statement @autoreleasepool to do that.

NeoMAD generates by default in all loops this @autoreleasepool statement.

autoreleasepool-off option

To disable this feature, a new command line option has been added : --autoreleasepool-off

Compatibility changes

Android Eclipse project

NeoMAD has stopped to generated the Eclipse Android output project.

Requirements

Android SDK

  • SDK Tools revision 25 or later
  • Build Tools revision 26 or later
  • Android API Level 25 (Android 7.1) or higher

Java7

NeoMAD needs now Java SE Development Kit version 7 or later installed on the host machine.

Android Signature

The URS XML keypassword attribute becomes mandatory in the Android signature tag.

Fixes

  • iOS:
    • Fix Simulator launching step.
    • Fix crash that occured sometimes when coming back from external application
    • Fix RadioGroup.findView() method: Unable to find a radiobutton from its chidren
    • Fix RadioButton.setChecked(): the RadioButton was not refreshed
  • Android:
    • Fix the TextField misplaced cursor when the setText() method has been called programmatically.