Mobile Performance Improvements

Mobile developers are constantly looking for ways to shave seconds off of their application load times. They know a poor first time user experience can mean their applications are abandoned. With this in mind, OutSystems Platform 9 Bali introduces new caching capabilities and a new way to minimize message exchanges between the network client and server that will accelerate current mobile application projects.

Prefetching Resources

Prefetching is a technique used by many web and mobile applications to load application resources upfront before the end-user starts to interact with the application. It optimizes the user experience of the application, by taking a little bit longer to start the application.

With OutSystems Platform 9 Bali, a new load screen prefetches resources. Our customers who have used this OutSystems Platform capability are reporting optimizations of up to 50 percent in page load time.

Mobile Performance

The Load Screen

The new OutSystems Platform 9 Bali load screen is fully customizable, can be activated on a per app basis, and runs once per session, meaning end users won’t be seeing the load screen again until they close the application. The load screen downloads the application resources into a cache in the user’s device - such as CSS, javascript, images, and fonts. Once the resources are cached, the navigation and overall experience are improved and additional downloads are not needed. If someone has already accessed the application in a previous session, the application will only need to download those resources that were not previously cached yet.

Using the Load Screen

To use this capability, there is no need to change the applications. Simply activate the load screen option inside the environment management console and republish the application. The prefetching will be automatically activated for the users of the application.

Learn more about prefetching resources to improve performance

See how to customize the load screen when prefetching resources

Optimized Notify Mechanism

When optimizing the performance of applications for the mobile web, developers tend to focus mostly on client-side rendering optimizations, perhaps because those are the easiest to control.

However, where most applications fall short is often in the networking performance category: mobile web imposes a number of constraints that, if unaccounted for, will lead to slow response times. These slow responses are due to high latency variability, which ultimately ends in a compromised experience for end users.

The latest generation of mobile network types, such as 4G, feature significant improvements that reduce mobile network latency, but companies cannot yet design applications just for the latest-generation mobile networks.

3G is the dominant network type in the world and, even users with the latest devices will continuously transition between 4G, 3G, and even 2G networks based on the continuously changing conditions of their radio environments.

To eradicate this problem, in OutSystems Platform 9 Bali, the round-trip message exchanges between the network client and server have been minimized.

Our customers who are using this OutSystems Platform capability are reporting gains up to 30% in mobile performance.

Learn more about notifying changes on a screen

A New Action Called Notify

The behavior of web blocks, which allow reusable screen parts to exchange information with the mobile or web page where they are running, has been enhanced. Web blocks are implemented by an action that is now called “Notify,” instead of “NotifyWidget” that executes “On Notify” handlers synchronously in the server and in the original web request. This means extra round trips from the server to the browser are not necessary, which enables developers to spend more time shipping core features, and takes the heavy-lifting off network performance optimization.

Changed On Notify Handler Execution

Further, the “On Notify” handler is now executed inside the same transaction and request context as the original caller. You’ll be able to guarantee transactional consistency when updating screens, without coding additional logic.

Learn more about what is changing in your upgraded applications

Change Notify Handler Execution

contact pricing