app
The sos.management.app API groups together methods for managing the signageOS application installed on the system.
App Management Capabilities
If you want to check if the device supports this capability, use [`sos.management.supports()`](https://developers.signageos.io/sdk/sos_management/#supports).
Methods
getType()
The getType() method returns the type of the platform the application is running on.
- If you need to get a specific Android brand or Raspberry Pi model, use the
sos.management.firmware.getType(). defaulttype is always Emulator.
getType(): Promise<AppType>;
Return value
Resolves to the type of the application platform.
Example
const appType = await sos.management.app.getType();
console.log(appType); // tizen, linux, webos, etc.
getVersion()
The getVersion() method returns the version of the Core App that is currently running on the device.
getVersion(): Promise<string>;
Return value
Resolves to the version of the Core application.
Example
const version = await sos.management.app.getVersion();
console.log(`Current application version is: ${version}`); // e.g. '4.0.0', '5.2.1', etc.
upgrade(appUri)
The upgrade(appUri) method upgrades the signageOS application with the provided appUri. Open users can upgrade the app passing
a URL where the application files are hosted.
The appUri must follow the exact folder structure produced by the signageOS Device-app Builder.
The upgrade will fail silently (device reverts to the previous version) if the URL does not match the expected format.
Key rules:
- The folder structure on your server must match the ZIP package from signageOS exactly. Do not rename files or reorganize folders.
- HTTP redirects (e.g., 302) are not supported. Files must be directly accessible at the expected URLs.
- The URL must not end with a trailing slash (
/). A trailing slash causes the upgrade to fail.
The expected URL format differs per platform:
| Platform | URL format |
|---|---|
| Tizen | Point to the folder containing sssp_config.xml and *.wgt — not to a specific file. E.g. https://cdn.example.com/app/tizen/2.10.1/landscape |
| SSSP | Point to the folder containing sssp_config.xml and *.wgt. E.g. https://cdn.example.com/app/sssp/2.10.1/landscape_full-hd |
| webOS 1, 2 | Point to the ZIP file directly. E.g. https://cdn.example.com/app/webos/2.10.1/ApplicationName.zip |
| webOS 3+ | Point to the IPK file directly. E.g. https://cdn.example.com/app/webos/2.10.1/ApplicationName.ipk |
| BrightSign | Point to the zip file directly. E.g. https://cdn.example.com/app/brightsign/2.10.1/display-brightsign.zip |
| Android | Point to the APK file directly. E.g. https://cdn.example.com/app/android/2.10.1/io.signageos.android.apk |
| Windows | Point to the zip file directly. E.g. https://cdn.example.com/app/windows/2.10.1/windows_2.10.1.zip |
| ChromeOS | Not supported |
For the full folder structure reference and deployment guide, see Build & Deploy Your Applet Via Core App with built-in Applet.
upgrade(appUri: string): Promise<void>;
Params
| Name | Type | Required | Description |
|---|---|---|---|
appUri | string | Yes | URL where the application files are hosted. Must follow the platform-specific format described above. |
Return value
A promise that resolves when the upgrade starts.
Possible errors
If the upgrade fails.
Example
// Upgrade Tizen device — point to the FOLDER, not a specific file. No trailing slash.
await sos.management.app.upgrade('https://cdn.your-cms.com/app/tizen/2.10.1/landscape');
upgrade(baseUrl, version)
The upgrade(baseUrl, version) does the same as upgrade(version, baseUrl).
upgrade(baseUrl: string, version: string): Promise<void>;
Params
| Name | Type | Required | Description |
|---|---|---|---|
baseUrl | string | Yes | The server URL where application files are located. |
version | string | Yes | The version of the application being installed. |
upgrade(version, baseUrl)
The upgrade(version, baseUrl?) method upgrades the signageOS application using version and baseUrl. Platform users can install the general
application version directly with passing just the version number. Optionally, the baseUrl can be passed as an argument to specify the server
where the application files are accessible.
upgrade(version: string, baseUrl?: string): Promise<void>;
Params
| Name | Type | Required | Description |
|---|---|---|---|
version | string | Yes | The version of the application being installed. |
baseUrl | string | No | Optional server URL where application files are located. (Default value: "https://2.signageos.io") |
Return value
A promise that resolves when the upgrade starts.
Possible errors
If the upgrade fails.
Example
await sos.management.app.upgrade('4.0.0', 'https://2.signageos.io')