Skip to main content

 

 

 

Template:OutSystems/Documentation_KB/Breadcrumb_New_Layout

 

Template:OutSystems/OSLanguageSwitcher

 

 

 

 

 
OutSystems

MABS Version 7.0

First release: 2020-12-09 14:00:00 UTC
Last update: 2021-02-19 15:30:00 UTC.

MABS 7.0 is an important milestone for all developers who publish on App Store and Play Store. This new MABS version uses Android 11 (API level 30), iOS 14 and Cordova CLI 10, allowing you to continue to submit your iOS apps to the App Store and your Android apps to the Play store.

What's New

  • Mobile Apps Build Service (MABS) now uses the latest iOS SDK 14. This means that you can continue submitting your iOS apps to the App Store while complying with the requirements by Apple.

  • AndroidX is enabled by default. Fore more information see Building apps with AndroidX

  • Latest Android API level 30. This lets you submit your Android apps with the most recent target SDK to Google Play.

  • iOS apps now support iPhone 12, iPhone 12 Pro, and iPhone 12 Mini. 

  • Cordova iOS engine 6.1.1 for iOS apps. We highly recommend you revise your plugins for compatibility with this version.

  • Cordova Android engine 9.0.0 for Android apps. It is highly recommended that you ensure your plugins are compatible with this version.

  • Cordova Command Line Tool (CLI) 10.0.0. We highly recommend you revise your plugins for compatibility with this version.

  • CocoaPods version 1.10.0. You should revise your plugins that have dependencies for CocoaPods.

  • We improved the overall stability and security, with a focus on the mobile apps that use plugins with hooks. We recommend rebuilding your mobile apps and confirming they are working as expected.

  • Removed the network inspector from the Android builds. It’s now available for iOS only, as this is a feature specific for the iOS builds.

  • Dropped support for iOS 11.

  • Dropped support for Android 5 and 5.1

 

Bug fixing

  • [2021-01-15 14:00:00 UTC] Improved the robustness of the build process in scenarios with potential permission errors. (RNMT-4586)
  • [2021-02-17 18:30:00 UTC] Improved a build error message when using requireCordovaModule from a plugin hook to load non-Cordova modules. (RNMT-4668)
  • [2021-02-17 18:30:00 UTC] Fixed iOS build process for apps with custom Cordova plugins. (RNMT-4669)
  • [2021-02-17 18:30:00 UTC] Fixed iOS debug builds that have CocoaPods with the dynamic framework dependencies. (RNMT-4687)
  • [2021-02-19 15:30:00 UTC] We fixed an Android issue related to the SSL Pinning Plugin that was causing apps to show an error screen at startup. (RNMT-4710)

 

SSL Pinning 

SSL Pinning plugin must be the latest version (6.0.0 or later) to be supported correctly in MABS 7.0.

InAppBrowser

InAppBrowser plugin must be the latest version (2.4.0 or later) to be supported correctly in MABS 7.0.

Camera

Camera plugin must be the latest version (6.2.0 or later) to be supported correctly in MABS 7.0.

Ciphered Local Storage

Ciphered Local Storage plugin must be the latest version (3.1.0 or later) to be supported correctly in MABS 7.0.

OneSignal

OneSignal plugin must be the latest version (3.5.0 or later) to be supported correctly in MABS 7.0.

 

Breaking Changes and Known Limitations

Here is the list of issues that may appear when building your apps with MABS 7.0.

Commit or subdir element no longer effects dependency definition

The commit or subdir element no longer has any effect on dependency definition For example, <dependency id="..." url="https://x.git" commit="y" /> no longer installs https://x.git#y, but instead plain https://x.git.

Workaround

Put the complete URL in the url element.

context.requireCordovaModule no longer supported for loading non-Cordova modules

Using context.requireCordovaModule to load non-cordova modules is not supported anymore. Trying to build an app on MABS 7 with a plugin that uses context.requireCordovaModule, causes a message similar to:

Error installing Cordova plugin: {0}. Using "requireCordovaModule" to load non-cordova modules {PLUGIN NAME} is not supported. Instead, add this module to your dependencies and use regular "require" to load it.

Workaround

Replace context.requireCordovaModule with require and define the dependencies on package.json. Skip this for modules that belong to Node.

Xcode required in package.json

Hooks in plugins requiring modules need to add modules such as “xcode” to the package.json

When a build fails with, logs similar to this are shown: Cannot find module 'xcode'

Workaround

Define the dependencies in package.json.

Value user-agent no longer available through CDVUserAgentUtil

With the new cordova-ios engine 6.1.1, any Cordova plugin that requires user-agent no longer can get it through the CDVUserAgentUtil component.

Workaround

Or any Cordova plugin that requires user-agent, ensure the following:

  • The plugin no longer depends on the CDVUserAgentUtil component.

  • The plugin is no longer retrieving the user-agent from the CDVPlugin or the CDVViewController components.

  • The plugin can programmatically retrieve user-agent from the WebView instance.

 

  • Was this article helpful?