Skip to main content

Config glossary (Mason OS 3)

system


config_boot_on_power

os.configuration.system.config_boot_on_power

Allows the device to boot to Mason OS at power instead of staying at charger mode. The device will boot after a safe battery threshold. This threshold is device dependent. If disabled, the device will boot to charger mode.

Types: boolean


config_usb_host_enabled

os.configuration.system.config_usb_host_enabled

Sets the device to enable or disable the usb host. By default it is enabled, allowing for any device to be connected. Disabling prevents all devices from connecting over USB but still allows charging.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 1


config_recovery_factory_reset_enabled

os.configuration.system.config_recovery_factory_reset_enabled

Sets the device to enable or disable the Wipe Data/Factory reset option on the recovery menu. If disabled, the option will not be visible or executable. By default it is enabled, showing the option on the recovery menu and allowing it's execution.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 1


android


config_wifiOnly

os.configuration.android.config_wifiOnly

Flag indicating whether the device should ignore cellular and use wifi only

Types: boolean


config_globalActionsList

os.configuration.android.config_globalActionsList

Defines the default set of global actions. Actions may still be disabled or hidden based on the current state of the device. Each item must be one of the following strings: "power" = Power off "settings" = An action to launch settings "airplane" = Airplane mode toggle "bugreport" = Take bug report, if available "silent" = silent mode "users" = list of users "restart" = restart device

Types: array


config_supportAutoRotation

os.configuration.android.config_supportAutoRotation

If true, enables auto-rotation features using the accelerometer. Otherwise, auto-rotation is disabled. Applications may still request to use specific orientations but the sensor is ignored and sensor-based orientations are not available. Furthermore, all auto-rotation related settings are omitted from the system UI. In certain situations we may still use the accelerometer to determine the orientation, such as when docked if the dock is configured to enable the accelerometer.

Types: boolean


config_lowBatteryWarningLevel

os.configuration.android.config_lowBatteryWarningLevel

Display low battery warning when battery level dips to this value

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 15


config_minimumScreenOffTimeout

os.configuration.android.config_minimumScreenOffTimeout

Set the minimum user activity timeout, in milliseconds. The specified value becomes a lower bound for the SCREEN_OFF_TIMEOUT system setting which determines how soon the device will go to sleep when there is no user activity. This value must be greater than 0.

Most importantly, the system uses the greater of config_minimumScreenOffTimeout and SCREEN_OFF_TIMEOUT setting in calculating the screen off timeout.

NOTES:

  • The default value of the SCREEN_OFF_TIMEOUT system setting is 60 seconds
  • Despite the name of this config, when this timeout expires the device enters a low power state first. This implies that the screen may not turn off immediately, but rather be dimmed first, and then later turned off after an internal timeout expires. This cannot currently be controlled

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 10000


config_longPressOnPowerBehavior

os.configuration.android.config_longPressOnPowerBehavior

Control the behavior when the user long presses the power button. 0 - Nothing 1 - Global actions menu 2 - Power off (with confirmation) 3 - Power off (without confirmation) 100 - Send a broadcast with action "com.bymason.platform.LONG_PRESS_POWER"

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 1


config_notifications_block_list

os.configuration.android.config_notifications_block_list

Block a package from posting notifications.

Types: array


config_shortPressOnPowerBehavior

os.configuration.android.config_shortPressOnPowerBehavior

Controls the behavior when the user short presses the power button.

ValueBehavior when the power button is pressed
0Do nothing; presses are completely ignored. The device does not go to sleep or into doze mode.
1 (default)This is the system default. This will cause the device to go to sleep, but not before going through a doze mode phase.
2This will cause the device to skip Android's doze mode and go directly to sleep.
3This will cause the device to skip Android's doze more and go directly to sleep. This will also cause the launcher application to be brought to the foreground.
100Do nothing and send a broadcast with action "com.bymason.platform.SHORT_PRESS_POWER".

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 3


config_doublePressOnPowerBehavior

os.configuration.android.config_doublePressOnPowerBehavior

Control the behavior when the user double presses the power button. 0 - Nothing 1 - Toggle theater mode setting 2 - Brightness boost

Types: integer, string (0[xX][0-9a-fA-F]8)0


config_triplePressOnPowerBehavior

os.configuration.android.config_triplePressOnPowerBehavior

Control the behavior when the user triple presses the power button. 0 - Nothing 1 - Toggle theater mode setting 2 - Brightness boost

Types: integer, string (0[xX][0-9a-fA-F]8)0


config_criticalBatteryWarningLevel

os.configuration.android.config_criticalBatteryWarningLevel

Display low battery warning when battery level dips to this value. Also, the battery stats are flushed to disk when we hit this level.

Types: integer, string (0[xX][0-9a-fA-F]8)Default: 5


config_screenBrightnessSettingDefault

os.configuration.android.config_screenBrightnessSettingDefault

Default screen brightness setting. Must be in the range specified by minimum and maximum.

Types: integer, string (0[xX][0-9a-fA-F]8)Default: 102


config_nonBlockableNotificationPackages

os.configuration.android.config_nonBlockableNotificationPackages

An array of packages for which notifications cannot be blocked.

Types: array


config_cameraDoubleTapPowerGestureEnabled

os.configuration.android.config_cameraDoubleTapPowerGestureEnabled

Allow the gesture to double tap the power button twice to start the camera while the device is non-interactive.

Types: boolean

Default: true


quick_settings_tiles_default

os.configuration.systemui.quick_settings_tiles_default

The default tiles to display in QuickSettings

Types: string

Default: "cell,wifi,bt,airplane"


systemui


config_quickSettingsTilesEditable

os.configuration.systemui.config_quickSettingsTilesEditable

Whether or not to enable QuickSettings options deletion, addition or rearrange.

Types: boolean

Default: true


config_showDeviceMonitoredWarning

os.configuration.systemui.config_showDeviceMonitoredWarning

Whether or not to show the device monitored warning in QuickSettings.

Types: boolean

Default: true


config_keyguardShowPhoneAffordance

os.configuration.systemui.config_keyguardShowPhoneAffordance

Show phone affordance on Keyguard

Types: boolean

Default: true


config_keyguardShowCameraAffordance

os.configuration.systemui.config_keyguardShowCameraAffordance

Show camera affordance on Keyguard

Types: boolean

Default: true


config_quickSettingsAppSettingsEnable

os.configuration.systemui.config_quickSettingsAppSettingsEnable

Whether or not to show the Settings App access in QuickSettings.

Types: boolean

Default: true


config_quickSettingsClockSettingEnable

os.configuration.systemui.config_quickSettingsClockSettingEnable

Whether or not to enable the Clock Settings App access in QuickSettings.

Types: boolean

Default: true


mason-core


config_xray_notify

os.configuration.mason-core.config_xray_notify

Whether to show a persistent notification while an X-Ray session is active

Types: boolean

Default: true


config_xray_enabled

os.configuration.mason-core.config_xray_enabled

Whether to enable the Mason X-Ray remote access feature

Types: boolean

Default: true


config_location_polling

os.configuration.mason-core.config_location_polling

Whether to allow the device(s) to report location to the Mason Dashboard.

Types: boolean

Default: true


config_locate_check_frequency

os.configuration.mason-core.config_locate_check_frequency

If config_location_polling is allowed, the frequency (in hours) of how often to report location information

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 24


config_destructive_commands_package

os.configuration.mason-core.config_destructive_commands_package

If specified, this package will be notified of destructive commands sent from the platform. Destructive commands include: REFURBISH, WIPE

Types: string


mason-fota


config_update_install_time

os.configuration.mason-fota.config_update_install_time

Target 24 hour install time for OS updates that have been downloaded. (needs to be between 0-23 for the hour and 0-60 for the minute, delimited with a colon or -1 for immediate install after update check)

Types: string

Default: "-1"


config_prompt_timeout_count

os.configuration.mason-fota.config_prompt_timeout_count

The time (in seconds) a user has before the pending update runs automatically from the update prompt.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 60


config_install_prompt_package

os.configuration.mason-fota.config_install_prompt_package

Normally, OTA updates (for both project configurations as well as the operating system itself) are installed automatically by the system based upon the rules specified in the mason-fota section of the project configuration YML. When the OTA is about to be installed, the device displays a dialog box with a countdown indicating as such. There may be instances where such a prompt may be inappropriate or undesirable (for instance, a tablet used in a healthcare setting should not reboot and update itself while in use).

This configuration allows you to specify the package name of an application that will instead be responsible for being notified of and subsequently initiating OTA installations.

If the package name represents a valid application currently on the device, that application will receive an intent broadcast from the system when it is time for an OTA installation. The intent will contain a string extra named "target_uuid" which must be saved for later use. The intent filter shown here can be used to receive the broadcast (see right).

It is then up to the application specified to communicate when it is ready to do an install by calling masonamerica.platform.FotaManagerPrivileged#requestInstall(uuid) via the Mason Framework API, passing in the value of the "target_uuid" extra from earlier as a parameter.

NOTES:

  • The intent is sent just prior to when the system would have normally attempted an automatic installation. Hence, any install times or check frequencies specified in the YML will still be in effect
  • If this package name does not resolve to a valid application, the system will default to the usual configured behavior
  • There should only ever be a single system update, so whenever a uuid is provided, any previous one may be discarded. Once requestInstall() is called, the uuid should be discarded
  • If empty or omitted, the system reverts to default OTA installation behavior

Types: string


config_update_check_frequency

os.configuration.mason-fota.config_update_check_frequency

The frequency for which to check for updates from boot, default is 24 hours

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 24


config_update_check_when_idle

os.configuration.mason-fota.config_update_check_when_idle

When true, only performs update checks when the device is idle. Note that this is incompatible with and will override config_update_check_backoff_period.

Types: boolean


config_update_check_network_type

os.configuration.mason-fota.config_update_check_network_type

NETWORK_TYPE_ANY The default update check network type, allows checks over any network Constant Value: 1 (0x00000001) NETWORK_TYPE_UNMETERED The update check requires network connectivity that is unmetered. Constant Value: 2 (0x00000002) NETWORK_TYPE_NOT_ROAMING The update check requires network connectivity that is not roaming. Constant Value: 3 (0x00000003)

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 1


config_default_connection_timeout

os.configuration.mason-fota.config_default_connection_timeout

The default connection timeout for the mason endpoint

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 60


config_update_check_when_charging

os.configuration.mason-fota.config_update_check_when_charging

When true, only performs update checks when the device is charging

Types: boolean


config_allow_download_over_metered

os.configuration.mason-fota.config_allow_download_over_metered

When true, performs application downloads over a metered network

Types: boolean

Default: true


config_update_check_backoff_period

os.configuration.mason-fota.config_update_check_backoff_period

The exponential backoff period in hours for a failed update check. Defaults to 5 hours. This configuration has no effect when config_update_check_when_idle is set to true.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 5


config_show_download_in_downloads_ui

os.configuration.mason-fota.config_show_download_in_downloads_ui

When true, shows the applications downloads in the downloads ui of the OS

Types: boolean


config_update_prompt_prior_to_install

os.configuration.mason-fota.config_update_prompt_prior_to_install

Whether to prompt prior to fota install, if enabled a user has N (see config_prompt_timeout_count) seconds to cancel a pending update before it runs automatically.

Types: boolean

Default: true


config_update_install_battery_threshold

os.configuration.mason-fota.config_update_install_battery_threshold

Minimum battery level (as percentage) required for an update to be installed.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 20


config_show_download_progress_as_notification

os.configuration.mason-fota.config_show_download_progress_as_notification

When true, shows the application download progress as a persistent notification

Types: boolean


mason-management


disable_camera

os.configuration.mason-management.disable_camera

Flag indicating whether or not to disable camera functionality

Types: boolean


hidden_packages

os.configuration.mason-management.hidden_packages

When a package is hidden it is unavailable for use, but the data and actual package file remain.

Types: array


disable_keyguard

os.configuration.mason-management.disable_keyguard

If set to True, the default lockscreen (swipe to unlock) will be disabled. Upon first boot after deploying the config, the device will still display the swipe lock screen only once. However, the lock screen will be no longer displayed subsequently after it was dismissed. When used in conjunction with 'direct_boot_package' and 'disable_keyguard,' the specified application will open directly after a device reboot, eliminating the need for an intermediate screen (keyguard/lock screen). If set to 'False,' upon device boot or wake-up, the keyguard (default lock screen) will be displayed first, requiring the user to swipe up before accessing the Mason OS. Note: If the user set a pin or pattern or password and fingerprint, this config will not disable that type of keyguard.

Types: boolean


disable_status_bar

os.configuration.mason-management.disable_status_bar

If True, the status will not be accessible system-wide. Pulling down from the top of the device will not render the status bar. If False, the status bar will be accessible by pulling down from the top of the device.

Types: boolean


lock_task_packages

os.configuration.mason-management.lock_task_packages

A white-list of package names of applications that can be pinned to the screen via context.setLockTaskMode() or via lockTaskMode in the manifest. For use by customers.

Types: array


config_global_proxy

os.configuration.mason-management.config_global_proxy

Value indicating the network-independent global HTTP proxy of the type specified config_global_proxy_type. See the documentation for config_global_proxy_type for more information.

Types: string


direct_boot_package

os.configuration.mason-management.direct_boot_package

The package name of the application to directly launch upon boot. The package name must refer to a valid Android application that follows the standard Android mechanism to mark a single "launchable" activity in its manifest.

Types: string


cert_installer_package

os.configuration.mason-management.cert_installer_package

The package name of the app to be set as a certificate installer.

Types: string


config_adb_public_keys

os.configuration.mason-management.config_adb_public_keys

List of ADB public keys that should be added to the system. This can be used to pre-authorize keys for known users. Removing a value here does not remove it from Android automatically.

Types: array


disable_screen_capture

os.configuration.mason-management.disable_screen_capture

Flag indicating whether or not to disable screen capture. If set to true, then all screen capture actions including X-Ray Remote Control and Take Screenshot will not work.

The default is false.

Types: boolean


config_global_proxy_type

os.configuration.mason-management.config_global_proxy_type

Sets a network-independent global HTTP proxy of a given type. This is useful for general internal/corporation-wide filtering scenarios. On a private network where the proxy is NOT accessible for any reason, this could break HTTP on a device. This value is ignored if config_global_proxy is not set. Allowed values are: 'direct' - Specifies a direct proxy via host and port. It requires specification of config_global_proxy and parses the latter as host[:port] 'pac' - This is used to specify proxy auto-config (PAC). It requires specification of config_global_proxy and parses the latter as a URL to a PAC file. 'none' - This is the same as not specifying this configuration at all. The value of config_global_proxy, if set, is ignored. This is the default. NOTE: Typical HTTP proxies are generally network dependent. This setting is not on a per-network basis, but rather has a global effect. NOTE 2: This proxy is only a recommendation and it is possible that some apps, especially native apps or those that use custom HTTP client implementations will ignore it. @see https://developer.android.com/reference/android/app/admin/DevicePolicyManager#setRecommendedGlobalProxy(android.content.ComponentName,%20android.net.ProxyInfo) @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file


Types: string

Default: "none"


default_keyboard_package

os.configuration.mason-management.default_keyboard_package

The package name of the keyboard to set as the default keyboard.

NOTES:

  • The package name must refer to a valid Android application that follows the standard Android mechanism for declaring input methods.
  • The package must be included in the app section as part of the config. See apps for how an Android application is included into the software build.

Types: string


enable_ime_with_hard_keyboard

os.configuration.mason-management.enable_ime_with_hard_keyboard

Flag indicating whether the soft input keyboard must be shown when a text input field is in focus even when an external keyboard is connected (such as an external Bluetooth hardware keyboard or a Bluetooth barcode scanner that uses the input device profile.)

Types: boolean


autogrant_runtime_permissions_packages

os.configuration.mason-management.autogrant_runtime_permissions_packages

Android does not always grant all permissions requested by an application in its Android manifest. For instance, runtime permissions (or permissions marked as "development") are never granted automatically. A common development-time workaround is to assign such permissions to applications via adb shell pm grant <pkg> <perm>. This configuration value specifies an array of package names of apps that wish to be granted such permissions automatically without requiring the use of adb. Note that each of the applications corresponding to the packages indicated below must specify each of these permissions also within their manifest (AndroidManifest.xml) for this to work correctly. Use with care as this allows for privilege escalation.

Types: array


default_runtime_permissions_grant_policy

os.configuration.mason-management.default_runtime_permissions_grant_policy

Sets the default permission grant policy for future runtime permission requests by apps that are installed either via config deployments, app deployments or adb. Allowed values are: 'autogrant': Permission policy to always grant new permission requests for runtime permissions. Already granted or denied permissions are not affected. 'autodeny' : Permission policy to always deny new permission requests for runtime permissions. Already granted or denied permissions are not affected. 'prompt' : Permission policy to always prompt the user for new permission requests for runtime permissions. Already granted or denied permissions are not affected. NOTE: If this configuration key is omitted or has an invalid value, it defaults to 'prompt'. See also: autogrant_runtime_permissions_packages

Types: stringDefault: "prompt"


config_allow_install_from_unknown_sources

os.configuration.mason-management.config_allow_install_from_unknown_sources

Flag indicating whether or not to allow installation of apps from unknown sources

Types: boolean


mason-app-updater


config_update_install_time

os.configuration.mason-app-updater.config_update_install_time

Target 24 hour install time for application updates that have been downloaded. (needs to be between 0-23 for the hour and 0-60 for the minute, delimited with a colon or -1 for immediate install after update check)

Types: string

Default: "-1"


config_update_check_at_boot

os.configuration.mason-app-updater.config_update_check_at_boot

When true, performs an update check for all the packages at boot up regardless of other policies.

Types: boolean

Default: true


config_update_check_polling

os.configuration.mason-app-updater.config_update_check_polling

When true, performs polling update checks as defined by the config_update_check_frequency

Types: boolean

Default: true


config_update_check_frequency

os.configuration.mason-app-updater.config_update_check_frequency

The frequency for which to check for updates from boot, default is 24 hours

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 24


config_update_check_when_idle

os.configuration.mason-app-updater.config_update_check_when_idle

When true, only performs update checks when the device is idle. Note that this is incompatible with and will override config_update_check_backoff_period.

Types: boolean


config_update_check_network_type

os.configuration.mason-app-updater.config_update_check_network_type

NETWORK_TYPE_ANY The default update check network type, allows checks over any network Constant Value: 1 (0x00000001) NETWORK_TYPE_UNMETERED The update check requires network connectivity that is unmetered. Constant Value: 2 (0x00000002) NETWORK_TYPE_NOT_ROAMING The update check requires network connectivity that is not roaming. Constant Value: 3 (0x00000003)

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 1


config_default_connection_timeout

os.configuration.mason-app-updater.config_default_connection_timeout

The default connection timeout for the mason endpoint

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 60


config_update_check_when_charging

os.configuration.mason-app-updater.config_update_check_when_charging

When true, only performs update checks when the device is charging

Types: boolean


config_allow_download_over_metered

os.configuration.mason-app-updater.config_allow_download_over_metered

When true, performs application downloads over a metered network

Types: boolean

Default: true


config_update_check_backoff_period

os.configuration.mason-app-updater.config_update_check_backoff_period

The exponential backoff period in hours for a failed update check. Defaults to 5 hours. This configuration has no effect when config_update_check_when_idle is set to true.

Types: integer, string (0[xX][0-9a-fA-F]8)Default: 5


config_show_download_in_downloads_ui

os.configuration.mason-app-updater.config_show_download_in_downloads_ui

When true, shows the applications downloads in the downloads ui of the OS

Types: boolean


config_update_install_battery_threshold

os.configuration.mason-app-updater.config_update_install_battery_threshold

Minimum battery level (as percentage) required for an update to be installed when the device is not plugged to a power source.

Types: integer, string (0[xX][0-9a-fA-F]8)

Default: 20


config_show_download_progress_as_notification

os.configuration.mason-app-updater.config_show_download_progress_as_notification

When true, shows the application download progress as a persistent notification

Types: boolean


cellbroadcastreceiver


config_disable_all_cell_broadcast_alerts

os.configuration.cellbroadcastreceiver.config_disable_all_cell_broadcast_alerts

This configuration allows control over the default behavior of cell broadcast messages. If set to true, these alerts (such as "presidential" or "storm warning" alerts) will be suppressed. The default is false.

This configuration is appropriate for devices that are not intended to be used as primary communication devices.

Types: boolean