Custom Profile Support in AirWatch Launcher 3.2

AirWatch uses custom profiles to allow admins to push advanced MDM features and other settings to Android devices that are not supported through the AirWatch Console. The functions discussed article in this apply to AirWatch Launcher 3.2.

 

Using Custom Profiles

The Custom Settings payload allows admins to enter their own XML into a profile and apply the profile to devices. Follow the steps below using the custom XML code found in this article.

  1. Configure the General profile and deployment options as desired.
  2. Navigate to the Custom Settings profile and select Configure.
  3. Add the associated XML below to the Custom Settings text box. 
    1. This XML should contain the complete block of code as listed below. 
    2. Administrators should configure each setting from <true /> to <false /> as desired. 
    3. If certificates are required, then configure a Certificate payload within the profile and reference the PayloadUUID in the Custom Settings payload.
  4. Select Save & Publish.

 

Usage Access

Sent from the console to allow the user to navigate to Usage access settings.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">

<parm name="UsageAccess" value="True"/>
</characteristic>

 

Floating Button Timeout

Used to set the timeout value of the Floating Button in Single App Mode. Should be an integer only. If this is not sent from the Console, Launcher uses a default value of 10 seconds. 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="FloatingTimeoutValue" value="15"/></characteristic>

 

Fix Floating Button Position

When enabled, the user will not be able to move the floating action button. It will be positioned at right end corner. 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="FixSettingsPosition" value="True"/>
</characteristic>

 

Dynamic Whitelisting of Settings

This setting allows you to whitelist certain native setting which may not have been included in Launcher settings or it can be a native setting screen specific to OEM. 

Details needed to whitelist a setting: 

  • SettingName to be displayed on Launchersettings screen
  • (package name and class name) or (Action name) of that particular native setting to be launched.

If only Action is used:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CustomSettings" value="{"CustomSettings": [
{"name": "Location Settings","action": "android.settings.LOCATION_SOURCE_SETTINGS"}
]}"/>

</characteristic>

If packageName and class name is used:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CustomSettings" value="{"CustomSettings": [
{"name": "Manage Applications Settings","pName": "com.android.settings","cName": "android.settings.MANAGE_APPLICATIONS_SETTINGS"}
]}"/>
</characteristic>

For additional information, please see the Android Developer Settings page.

 

Launcher Branding

Provides a proper combination of Action Bar color and Status Bar color (Light and dark) as recommended by Google. You may set different colors according to you company’s brand colors .

Auto Branding: If you do not want to specify individual colors you can use this flag. In order for this to work, title bar icon (logo) must be present.The extracted colors for branding are from the company logo. 

In order to enable and implement this feature the below flag must be pushed down via the custom settings payload:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="eadfebd8-7f4c-4837-b9dd-dfcf31bd84e6"><parm name="AllowAutoBranding" value="true" />

</characteristic>

To personalize, then you can specify the title bar color, title text color, primary accent color, status bar color, and highlight color. Colors must be specified in hexadecimal color format:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="eadfebd8-7f4c-4837-b9dd-dfcf31bd84e6"><parm name="AllowBranding" value="
{"titleColor":"#FC002E","titleTextColor": "#F377F7","accentColor":"#36E712","highlightColor":"#4E993E","statusBarColor":"#FC002E"}"/>
</characteristic>

 

Dynamic Whitelisting of Activities

To whitelist a particular activity , specify a list of activities with package names in the below flag. These activities will not be visible on Launchersettings screen.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">

<parm name="CustomActivities" value="{"CustomActivities": [
{"pName": "com.example.demoapplication","cName": "com.example.demoapplication.MainActivity"},
{"pName": "com.example.demoapplication","cName": "com.example.demoapplication.Main2Activity"}
]}"/>

</characteristic>

 

Remove Welcome Screen

Currently, Launcher displays a welcome screen when it is pushed to the device. This can be removed by clicking the “Dismiss” (Cancel) button on the right lower corner. The below flag can be used to remove the Welcome screen.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="RemoveWelcomeScreen" value="True"/></characteristic>

 

Clear Application Data

Basically, in multi-user mode with checkin/checkout and Launcher, a user's data is cached/saved even after that user checks the device in.

Using OEM APIs that support it, Launcher will call Agent SDK API to clear the application data for all applications that Launcher has whitelisted for a specific user  if we use the below flag.

Note: AirWatch does not clear application data for Anchor apps (Agent, Launcher, OEM Services). 

In order to enable and implement this feature, the setting must be pushed down via the custom settings payload: 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="ClearAppData" value="True"/>
</characteristic>

 

Inactivity Timer

Specify an amount of time in which the device will automatically lock the Launcher screen and require the previously signed in user to re-enter their password to re-access the Launcher screen. In addition, if there is a user that has currently locked the Launcher screen, there needs to be a mechanism/option to force sign out the user and return the Launcher to the initial login screen where a different/new user can then log into that device. 

In order to enable and implement this feature, the setting must be pushed down via the custom settings payload:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="InActivityLock" value="True"/>
</characteristic>

If admin wants to specify the timeout value he can do so using the below flag . It must be an integer.The timeout value is in minutes.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec"><parm name="InActivityLock" value="True"/>
<parm name="InActivityTimeout" value="10"/></characteristic>

 

 

Hot Swap Profile Caching:

As check in/check out is done frequently, users often check out the same device but have to wait for a considerable amount of time for the profile to get applied after checking out. AirWatch can expedite this by caching profile per user when the user checks out that particular device for the first time.

In order to enable and implement this feature, the setting must be pushed down via the custom settings payload:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CacheProfile" value="True"/>
</characteristic>

 

Allow WebView inside Launcher:

Disable the WebView that is built into AirWatchLauncher. If there is no Browser installed on the device, web clips will not open. WebView will be disabled by default if admins want it enabled then they can do so by using the below flag:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec"><parm name="AllowBuiltInBrowser" value="True"/>
</characteristic>
 

 

Notification Access in Launcher:

AirWatch Launcher is capable of catching and displaying notifications to devices, but in order to do so, you need to enter the Admin mode on the device via password and enable it. End users cannot do it themselves. This flag will prompt end users to enable notifications while configuring Launcher.

For Phone: 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="AllowNotificationPermission" value="True"/>
</characteristic>

For tablets, you will need to use another flag in conjunction with the above flag, because in some tablets the notification settings can be opened in fragmented view. If 'canLaunchNativeSettings' is already used then there is no need for this flag:

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="AllowNotificationPermission" value="True"/>
<parm name="ForceTabletNotificationPermission" value="True"/>
</characteristic>

or

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="AllowNotificationPermission" value="True"/>
<parm name="CanLaunchNativeSettings" value="True"/>
</characteristic>

 

Dynamically add shortcuts to Launcher screen:

Similar to adding of a setting to Launcher settings, you can add a shortcut to Launcher home screen by using the below flag by mentioning "shortcut name, package name, activity name" or "shortcut name, action name".

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CustomShortcuts" value="{"CustomShortcuts": [
{"name": "Manage Applications Settings""pName": "com.android.settings","cName": "com.android.settings.Settings$DateTimeSettingsActivity"},
{"name": "Locale Settings","pName": "com.android.settings","cName": "com.android.settings.Settings$LocalePickerActivity"}
]}"/></characteristic>

 

Cannot clear Home Defaults in some devices:

Use the below flag for users to be prompted with a clear default screen from where he can navigate to native settings and clear the defaults manually.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CannotClearAppDefaults" value="True"/></characteristic>
 

 

Open Native settings in tablets:

In some of the tablets, native settings such as WIFI, Bluetooth, Language etc. are opened in a fragmented view which allows users to access other settings as well, in such a case user can easily get out of launcher. So, by default, Launcher does not allow users to open settings unless they use the below flag. If the admin thinks that it is safe to open native settings in that particular tablet then he can use this flag and all the native settings which are whitelisted can be accessed. This is usually used along with dynamically whitelisting settings flag (CustomSettings), custom shortcuts, custom activities and for notification access.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec"><parm name="CanLaunchNativeSettings" value="True"/></characteristic>

If you on want a particular native setting to be accessed and not other settings, use the flag:forceLaunch. This flag is used individually with each setting. If admin uses the flag: canLaunchNativeSettings,then all the whitelisted native settings can be accessed. If you want a particular setting, use the forceLaunch flag.This is usually used along with dynamically whitelisting settings flag(CustomSettings), custom shortcuts, custom activities and for notification access.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="CustomShortcuts" value="{"CustomShortcuts": [
{"name": "Manage Applications Settings","forceLaunch": "true","pName": "com.android.settings","cName": "com.android.settings.Settings$DateTimeSettingsActivity"},
{"name": "Locale Settings","pName": "com.android.settings","cName": "com.android.settings.Settings$LocalePickerActivity"}
]}"/></characteristic>

In the above XML (Customshortcuts) both Manage Applications and Locale Settings shortcuts will be visible on the Launcher screen, but users can only access Manage Application settings since it uses the forceLaunch flag.

The flags forceLaunch or canLaunchNativeSettings must be present for custom settings to be visible on Launcher settings screen. 

 

Clear Application Defaults

If there is no default set, then Android presents a dialog with all the applications which support that particular format. If a user chooses an application as default application for any file, then that file will always be opened in the same application until the user clears the default manually. Since there is no access to native settings inside Launcher, the user cannot clear the defaults.

The Clear Application defaults commands displays the Clear Application Default in Launcher Settings. All commonly used application types (PDF, Excel, Browsers, Images etc.) will be listed where users can clear defaults. The API to clear application defaults may not work on some OEMs, so AirWatch has made this as a configurable setting. 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec">
<parm name="AllowClearAppDefaults" value="True"/>
</characteristic>

In some devices AirWatch cannot clear application defaults programatically, for such devices admin can send the below flag in which case when the user tries to clear default he will be navigated to applications details settings screen where he can do it manually. 

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec"><parm name="CannotClearAppDefaults" value="True"/></characteristic>

 

BootUp Launchers

There are some boot up applications which run after the device is restarted. These boot up applications are getting blacklisted even though they are whitelisted on the Console. AirWatch maintains a list of whitelisted applications in the Launcher profile, but after reboot AirWatch Launcher takes some time to load this profile.

To prevent the apps from being blacklisted, you can provide the package name of all the boot up applications which are to be whitelisted.

<characteristic type="com.airwatch.android.kiosk.settings" uuid="568bc89d-1df8-4ce9-a041-e5a24acdb7ec"><parm name="BootupLauncher" value="com.sonyericsson.initialbootsetup, com.sonyericsson.setupwizard,com.honeywell.systemtools.autoinstall/></characteristic> 

 

Support Contact Information

To open a Support Request, please call your local AirWatch support line or submit a Support Request via myAirWatch.

 

Best Regards,

The AirWatch Team

Have more questions? Submit a request

0 Comments

Article is closed for comments.