Quickstart OutSystems Developer Cloud (ODC)

Team
SDK Team
Last Updated
April 24, 2026
This guide will help you implement the Group Link SDK in your application developed in the OutSystems Developer Cloud (ODC).

The GroupLinkSDK mobile library is designed to natively handle the complex management of Bluetooth, Background Services, Location and Notification permissions, ensuring full compatibility with iOS 12+ and Android 8+.

Requirements

  • Required software:
  • Required permissions:
    • Access the OutSystems Forge to download dependencies.

Step 1 - Obtaining the Mobile Library

The GroupLinkSDK Mobile library is available in the OutSystems ecosystem.

  1. In ODC Studio, click on Install from Forge.
Tela do ODC Studio mostrando a seção "Aplicativos" e uma seta vermelha apontando para o botão "Instalar do Forge" no canto superior direito.
  1. Search for GroupLinkSDK and click Install.
Tela do Forge no portal OutSystems com a busca pelo termo "GroupLinkSDK", exibindo um resultado correspondente e uma seta vermelha circulando o botão "Install".
  1. Open the Mobile library from the GroupLinkSDK in ODC Studio, click Try library, select your application, and click Confirm.
Tela do ODC Studio exibindo o modal "Try GroupLinkSDK in an app", com a opção de adicionar a Mobile Library ao app selecionado e uma seta vermelha circulando o botão "Confirm".

Step 2 - Configuring platform specifics (Required)

For the SDK to function in the background and interact with network interfaces on iOS, it is strictly necessary to inject native configurations at compile time (MABS). OutSystems ODC requires that the final application "own" these configurations.

Creating the buildAction.json file

  1. On your computer, create a text file called buildAction.json.
  2. Paste the exact JSON code below into it. This code injects the necessary Background Modes and Network Entitlements for iOS:
1{
2 "platforms": {
3 "ios": {
4 "plist": [
5 {
6 "replace": false,
7 "entries": [
8 {
9 "UIBackgroundModes": [
10 "location",
11 "bluetooth-central",
12 "bluetooth-peripheral",
13 "fetch",
14 "processing"
15 ],
16 "BGTaskSchedulerPermittedIdentifiers": [
17 "com.grouplinknetwork.bgtask"
18 ]
19 }
20 ]
21 }
22 ],
23 "entitlements": {
24 "replace": false,
25 "entries": [
26 {
27 "com.apple.developer.networking.wifi-info": true
28 }
29 ]
30 }
31 }
32 }
33}

Importing into the App's Resources

  1. In ODC Studio, go to the Data tab and find the Resources folder.
  2. Right-click, select Import Resource, and add your buildAction.json file.
  3. Select the imported file and change the Deploy Action to Deploy to Target Directory.
Tela do ODC Studio com a aba "Data" selecionada no painel direito, destacando o arquivo "buildAction.json" dentro da pasta "Resources". Uma seta vermelha aponta para o campo "Deploy Action" com o valor "Deploy to Target Directory" destacado nas propriedades do recurso.

Referencing App Extensibility

  1. Click on your App name at the top of the tree and click on Edit app properties.
  2. Navigate to the Extensibility tab.
  3. Add the following JSON to tell the compiler that it should read the file we created in the previous step:
1{
2 "buildConfigurations": {
3 "buildAction": {
4 "config": "$resources.buildAction.json"
5 }
6 }
7}
Tela do ODC Studio exibindo as propriedades do app, com a aba "Extensibility" selecionada e destacada. O editor mostra um JSON de configuração referenciando o arquivo "buildAction.json" via "$resources.buildAction.json".

Step 3 - Using the SDK Client Actions

The GroupLinkSDK exposes 4 Client Actions. You can drag them into your logic flows.

A imagem mostra a aba "Logic" do ODC Studio exibindo as Client Actions disponibilizadas pela Mobile Library GroupLinkSDK, sendo elas: RequestPermissions, SetNotificationName, StartSDK e StartSDKAndRequestPermissions.

StartSDK

Initializes the Group Link SDK in the application.

  • How to use: Requires you to pass your authentication Token (provided by Group Link).
    • It is recommended to call this action in the application's initialization event (OnReady), on the application's first screen.
Tela do ODC Studio exibindo a implementação de uma lógica no evento "OnReady". O usuário seleciona a tela inicial do APP na árvore de elementos à direita, acessa a aba de propriedades e cria um evento de 'On Ready'. A visualização muda para o editor de fluxo lógico, onde o usuário arrasta uma 'Client Action', seleciona a ação 'StartSDK' de dentro da Mobile Library 'GroupLinkSDK' e preenche o parâmetro de entrada 'Token' com um valor de string no painel de propriedades inferior.

RequestPermissions

It intelligently handles all the complex logic of requesting native user permissions.

  • How to use: Simply drag and drop into the app's input stream.
    • It is recommended to call this action in the application's initialization event (OnReady), on the application's first screen, right below the StartSDK action.
  • Technical Note: The SDK automatically identifies the operating system version and adapts the request to avoid crashes.
    • Android 11 → will only request Location (necessary for BLE scanning on older systems).
    • Android 12 → will request Location and Bluetooth permissions.
    • Android 13+ → will request permissions for Location, Bluetooth and Notifications.
Tela do ODC Studio exibindo a adição de uma segunda ação ao fluxo lógico "OnReady". O usuário arrasta uma nova "Client Action" para o fluxo, logo após a ação de "StartSDK". Abre-se uma janela de seleção onde, dentro da Mobile Library "GroupLinkSDK", é escolhida a ação de "RequestPermissions".

StartSDKAndRequestPermissions

A convenience action that unifies the two previous functions (StartSDK and RequestPermissions) into a single node.

  • How to use: Requires you to pass your authentication Token (provided by Group Link). Ideal for flows where you want to initialize the SDK and immediately display the permissions pop-up to the user.
    • It is recommended to call this action in the application's initialization event (OnReady), on the application's first screen.
Tela do ODC Studio exibindo a implementação de uma lógica no evento 'OnReady'. O usuário seleciona a tela inicial do APP na árvore de elementos à direita, acessa a aba de propriedades e cria um evento de 'OnReady'. A visualização muda para o editor de fluxo lógico, onde o usuário arrasta uma 'Client Action', seleciona a ação 'StartSDKAndRequestPermissions' de dentro da Mobile Library 'GroupLinkSDK' e preenche o parâmetro de entrada 'Token' com um valor de string no painel de propriedades inferior.

SetNotificationName

Configures remote device identification. To identify the device from your remote database or platform, you must assign a unique identifier using this method.

  • How to use: Receives the NotificationName (String) parameter.

IMPORTANT: Calling this method is mandatory for generating certain platform reports. For more information on which reports require this configuration, please contact our support team.

Tela do ODC Studio exibindo a adição de uma segunda ação ao fluxo lógico 'OnReady'. O usuário arrasta uma nova 'Client Action' para o fluxo, logo após a ação de 'StartSDKAndRequestPermissions'. Abre-se uma janela de seleção onde, dentro da Mobile Library 'GroupLinkSDK', é escolhida a ação de 'SetNotificationName' e preenchido o parâmetro de entrada 'NotificationName' com um valor de string ('TELA_TESTE_123') no painel de propriedades inferior.

Now that the Group Link SDK is implemented and the native features are configured, your ODC application is ready to interact with our ecosystem!