NeoMAD 4.4.3 release notes

November 6, 2017

NeoMAD 4.4.3 is a maintenance release proposing small enhancement.

Small enhancements

Version code

  • Add <versionCode> tag in URS parameters section. This number is an internal version number.

It is only used to determine whether one version is more recent than another.

FileStorage

  • Add FileStorage.requestExternalDir() method: this method replaces FileStorage.getExternalDir() and enables the application to get permission before using an external directory. Because Android needs to request permission at runtime, the FileStorage API must be asynchronous.
  • Add FileStorage.getApplicationExternalDir() method: this method returns an external directory reserved for the application, located in the SD Card.
  • Add FileStorage.isExternalDirAvailable() method: this method checks if the device has an accessible external storage (e.g. the SD Card).

Deprecations

  • FileStorage.getExternalDir(): this method is replaced by FileStorage.requestExternalDir().
  • FileStorage.getPrivateDir(): the usage of this method must be avoided, please use getApplicationDir() instead.

Fixes

  • Android:
    • Support Multidex feature (always enabled): Multidex enables big binaries to split code into several classes.dex files in order to avoid classes.dex to reach the code size limit.
    • Fix Http Timeout in HttpRequest: the socket has now a timeout (given by HttpRequest.setTimeout()).
    • Update version of Google Play Services dependencies to 11.4.2.
    • Fix a File.openFile() crash that occurs when a file provided by FileStorage is opened through the device.
  • iOS:
    • Fix File.list(): the returned list must be an array containing the file names in the directory (not their paths).
  • Windows:
    • Fix File.list(): the returned list must be an array containing the file names in the directory (not their paths).
    • Fix File.delete(): file must not be deleted if it is a directory with some content.