OutSystems Professional Developer study materials
OutSystems Professional Developer study resources

OutSystems Professional Developer: Mobile Development

OutSystems Professional Developer · Work through your exam, one topic at a time.

All guide sections

Mobile Development

What the Mobile Development domain tests

The Mobile domain tests mobile app packaging, the reactive mobile runtime, offline data synchronization, device capabilities, and performance choices on phones and tablets.

Core rules

  • OutSystems mobile apps use Reactive Web technology and are packaged into a native shell by the Mobile Application Build Service (MABS). The app is distributed through the Apple App Store or Google Play, or internal distribution.
  • Offline Data Sync lets selected entities be available offline. The platform stores a local copy, synchronizes on app start, and can be triggered manually. Reads and writes hit local data first, then sync when connectivity returns.
  • Design for conflict: decide whether last-write-wins is acceptable or whether a version or timestamp attribute must be checked before applying an update.
  • Device features come from plugins such as camera, geolocation, and push notifications. Add the plugin dependency, request permissions, and handle denial gracefully.
  • Mobile screens follow the reactive lifecycle. The hardware back button, safe areas, and touch target sizes are part of the design.

Worked example

A field inspector must record inspections without signal. The Inspection entity is marked available offline. The screen's Data Action reads from the local entity, so it works with no network. The record is created locally and synchronized when the device reconnects. A Version attribute is compared during sync so a stale device does not overwrite a newer server record. Reasoning: online-only Data Actions would fail offline; the local entity plus sync policy is the supported mechanism. The version check moves conflict handling from guesswork to an explicit rule.

Traps

Assuming online Data Actions work offline, storing sensitive data in local storage without protection, ignoring sync conflicts, and adding a plugin without configuring permissions or platform build settings.