OutSystems allows you to access any native capability on the device, using one of three methods.
Platform-supported plugins: These plugins are available on the OutSystems Forge, and are fully supported by OutSystems. You can use OutSystems Now to immediately test applications that make use of these plugins.
Community supported plugins: These plugins are also available on the forge, and are supported by our community. You’ll need to build your own native version of the application in order to test the plugin. The application will still run on OutSystems Now, but the plugin will not be available until you install the app on your device.
Custom plugins: When the plugin you need isn’t available on the forge, you can create your own. Since our applications are built using Cordova, you can either use one of their many available plugins, or build your own.
OutSystems includes a set of supported plugins that can be installed from the forge. The following table summarizes the supported plugins and mobile operating systems. Be sure to check the specific OutSystems Forge page of each plugin to get detailed information on its capabilities.
This is the list of officially supported mobile plugins. Most of these plugins are included in the OutSystems Now app for an out-of-the-box testing.
|Camera||Enable your application to access the camera capabilities of the device.|
|Ciphered Local Storage (not included in OutSystems Now)||Keep your mobile application's sensitive data safe using a ciphered Local Storage database.|
|Card IO||Automatically get the details of a credit card just by taking a picture.|
|OneSignal Notifications (not included in OutSystems Now)||Push Notifications using OneSignal, with deep-linking and actions.|
|Pushwoosh Notifications (not included in OutSystems Now)||Push Notifications using Pushwoosh, with deep-linking and actions.|
|SSL Pinning (not included in OutSystems Now)||Provide an extra layer of security to HTTPS communications by adding a verification of the server certificate against hashes of public keys.|
|Local Notifications||Send app notifications to the device when the application isn't running in the foreground.|
|QR/Barcode scanner||Scan barcodes and QR codes.|
|Location||Access the GPS capabilities of the user's device. For example the latitude, longitude and the altitude of the user's device.|
|Contacts||Access the contacts of your device.|
|InApp Browser||Open external URLs directly in your application.|
|Touch ID||Use authentication with Touch ID in your application.|
|Calendar||Access the calendar of your device.|
|Key Store||Store small amounts of sensitive information on your device. The keystore secures data by encrypting the data before storing it, and the platform itself carefully controls access to stored items.|
OutSystems native apps are built on top of the Apache Cordova framework, a framework that enables using any native device API through the use of plugins.
In order to create a custom plugin for your OutSystems application you just need the select from one of the about 1500 available Cordova plugins, add the github address to your module, and wrap the plugin code with an OutSystems API. From that moment onward the new native functionality will be available in all your OutSystems apps.