When creating a new app in OutSystems you need to select the type of application you want to develop, according to your project's requirements. For each development scenario, different tools and features are available.
What is a Mobile App?
In OutSystems, a Mobile App is a native app shell, developed using Apache Cordova, that wraps a web app developed using the OutSystems visual language. The app has mobile-optimized user experience and can access the device capabilities and features using plugins. It can work offline and have data caching features thanks to the access to the local storage of the device. The code developed is cross-platform, that means you only have to develop one project and the application works on all supported mobile platforms (iOS and Android). You can generate application packages and distribute them in the stores or to a selected set of users.
What is a Web App?
Comparison Between Mobile and Web Apps in OutSystems
One codebase for all devices and screens sizes.codebase for all devices and screens sizes.
|Code Reusability|| |
One codebase for all supported mobile platforms.codebase for all supported mobile platforms.
|Runs in|| |
Mobile devices. Needs to be installed and is not supported in the browser.
Responsive layout for all screen sizes and types.
|User Experience|| |
Dedicated mobile UI patterns and experience, like animations and screen transitions.
AJAX responsive patterns. Depends heavily on the internet connection.
Mobile-optimized performance. App logic can run on the device and the data exchange with the server is reduced.
HTML5 supported device capabilities.
Access to Device Capabilities
Full range of device capabilities access (using Cordova plugins).
No offline or standalone capabilities by default (possible to use third-party components).
|Offline capabilities|| |
Using local storage for storing offline data. Client logic running on the device.
Automatic update on browser page refresh.
Most updates are made automatically on screen change. New installation required only when changing the native shell.
Share the app’s link with users.
In-House or via Mobile app stores.