NeoMAD 3.9.3 release notes

September 16, 2015

NeoMAD 3.9.3 is a maintenance release proposing the support of iOS 9 along with bug fixes.

New features

iOS 9 support

Applications built with NeoMAD for the iOS targets are now compatible with iOS 9. If you have an old iOS application, it needs to be built again with this new NeoMAD version and then it must be published on the Apple store as an update of the already published application.

iOS 9 App Transport Security

One of the most important new feature in iOS 9 is the new App Transport Security policy adopted by Apple.

These are the App Transport Security requirements (from Apple documentation):

  • The server must support at least Transport Layer Security (TLS) protocol version 1.2.
  • Connection ciphers are limited to those that provide forward secrecy (list on Apple documentation about ATS)
  • Certificates must be signed using a SHA256 or better signature hash algorithm, with either a 2048 bit or greater RSA key or a 256 bit or greater Elliptic-Curve (ECC) key.
  • Invalid certificates result in a hard failure and no connection.

The http connections that does not follow these requirements will fail. To ensure compatibility with old NeoMAD applications, NeoMAD will override and turn off this default behavior to allow all http connections without restrictions in the application. However, to improve your application security, NeoMAD provides the ability to allow connections to some identified domains only. To do that, use the new URS section httpAuthorizedDomain (see NeoMAD UserGuide). Finally, to have the more efficient connection security, the best way is to follow the new App Transport Security policy of Apple. In that case declare an empty httpAuthorizedDomain tag in the URS, it will allow iOS 9 default behavior (all connections that do not follow ATS requirements will fail).

iOS 9 Multitasking

Another important enhancement in iOS 9 is the support of multitasking in iPad. This means that the user will be able to open two applications side by side on the same screen.

This new behavior will become standard in iOS consequently NeoMAD automatically supports this new mode. Just rebuild your application with this version of NeoMAD to support this new feature.

Android 6

NeoMAD is now compatible with Android SDK 6.0.

Compatibility changes

  • Since NeoMAD now supports iOS 9, Xcode 7.0 is mandatory to build iOS applications.

Fixes

  • Android:
    • Fix Build failure when URS file does not use the new icon resource declaration system (@icon/icon)
  • Windows Phone:
    • Fix HttpResponse.getDataString(): an exception was thrown when the http response code was 403.