Layouts

Layouts is a Launcher feature that controls the applications displayed within the Launcher UI.

Overview

Launcher enables IT administrators to customize devices and restrict the applications that users can access. The Layouts configuration controls the applications displayed within the Launcher UI. This Launcher feature can organize applications into folders, display shortcuts, and assign applications to an 'Allow' list or a 'Block' list.

User Guide

Layouts are partitioned based on the user’s role or controlling group. When a user logs into Launcher, the user's Group/Role is determined. This Group/Role must match at least one of the layout groupings.

By default, the 'OpenZone' content is equivalent to the group "*", which is the group when the user is not authenticated.

Feature Configuration

To set up the Layouts feature for a particular device profile or device group, please follow the steps below:

Defining App Groups

The recommended way to setup layouts is to setup application groups which are logical groupings of your applications. For example:

"layouts" : {
    "WarehouseApps":[ ... apps related to warehouse functions ... ],
    "OfficeApps":[ ... apps related to office functions ... ],
    "OpenZone": [ ... apps available to all users ... ]
},

Defining App Groups to use based on Role

Once the application groups are defined, the group_inclusion field can be configured to display application groups within the Launcher UI that match a specific group or role. An example configuration is shown below:

"group_inclusion": {
    "OpsManager": [
      "WarehouseApps",
      "OfficeApps",
      "OpenZone"
    ],
    "StoreAssociate": [
      "WarehouseApps",
      "OpenZone"
    ],
    "*": [
      "OpenZone"
    ]
  },

Examples:

  1. A device is booted up, no one is authenticated ("*" group) so the OpenZone apps will be displayed (represented by the "*" in the group inclusions).

  2. User Joe logs into the device, and he is a member of group "StoreAssociates", he would see the contents of "WarehouseApps" and "OpenZone" groupings.

  3. User Sara logs into the device and she is a member of group "OpsManager", she would see the contents of "WarehouseApps", "OfficeApps" and "OpenZone" groupings.

  4. User Anna logs into the device and she is a member of group "OpsManager and StoreAssociate", she would see the contents of "WarehouseApps", "OfficeApps" and "OpenZone" groupings.

Displaying an Application

To display an application, all that is needed is the package name. Optional values can be used to change the label, the start activity, the icon, and the NFC Settings. To display an application, use the sample configuration below as a guide:

{
    "package" : "com.bluefletch.ems.support"
}

Changing the Start Activity and Label

Customizing the start activity and label can help users easily identify and access the app that they need or frequently use.

To change the start activity and label, use the sample configuration below as a guide:

{
    "label" : "Vision Settings",
    "package": "com.bluefletch.ems.vision",
    "activity": "PreferenceActivity"
},
{
    "label" : "Vision Training",
    "package": "com.bluefletch.ems.vision",
    "activity": "FaceTrainActivity",
    "icon" : "/sdcard/DCIM/icons/differentLogo.png",
    "nfcEnable": true
},

Customizing Web Shortcuts

Web shortcuts are URL links to web addresses. A shortcut will navigate the default web browser to the desired URL. To customize a web shortcut that can be added to the home screen layout, use the sample configuration below as a guide:

{
    "label" : "BlueFletch",
    "url" : "https://bluefletch.com",
    "icon" : "/sdcard/DCIM/icons/bluefletch_logo.png"
},

The above example will launch the https://bluefletch.com website in the default system browser.

You can also specify a different browser package. If the BlueFletch Browser is being used you can also define settings for that particular browser instance:

{
    "label" : "BlueFletch",
    "url" : "https://bluefletch.com",
    "icon" : "/sdcard/DCIM/icons/bluefletch_logo.png",
    "browser" : "com.bluefletch.ems.browser",
    "browserOverrides" : {
       "showToolbar" : true
    }
},

Refer to the BlueFletch Browser documentation on available override options.

Customizing Folders

Organizing apps and shortcuts into their designated folders makes it easier to access them without having to search for them individually.

To create a folder, add the contents array, and add the applications or shortcuts that belong in the folder, see example configuration below as a guide:

 {
        "label" : "Tools",
        "icon": "/sdcard/Download/ems/folder_icon.png",
        "contents":[
            {
                "package" : "com.symbol.datawedge"
            },
            {
                "package" : "com.symbol.tool.stagenow"
            },
            {
                "label" : "BlueFletch",
                "url" : "https://bluefletch.com",
                "icon" : "/sdcard/Download/ems/bluefletch_logo.png"
            }
        ]
    }

If not defined, the default thumbnail for a folder is a preview of the icons of up to four of the applications, shortcuts, and/or actions within it. However, by defining the "icon" field, like in the above example, one image file can be substituted as the folder icon.

Defining Custom Actions

Actions are shortcuts to launch system actions on the Launcher home screen.

To define custom actions that can be performed on the Launcher home screen, in the example below, clicking on the this icon will adjust the audio notification to 100%:

{
  "action" : "com.bluefletch.ems.AUDIO", 
  "label": "Set Full Volume", 
  "intentExtras": {
    "setting": "ADJUST_AUDIO",    
    "notification": 100
  }
}

Refer to the Layout Custom Actions page for available actions that can be put into Layouts.

Putting It All Together

For the example described above, the full configuration for the Layouts feature is as follows:

    "layouts" : {
        "WarehouseApps":[ ... apps related to warehouse functions ... ],
        "OfficeApps":[ ... apps related to office functions ... ],
        "OpenZone": [ ... apps available to all users ... ]
    },
            {
                "package" : "com.symbol.wfc.pttpro"
            },
            {
                "package": "com.bluefletch.ems.deviceinformation"
            },
            {
                "label" : "Vision Settings",
                "package": "com.bluefletch.ems.vision",
                "activity": "PreferenceActivity"
            },
            {
                "label" : "Vision Training",
                "package": "com.bluefletch.ems.vision",
                "activity": "FaceTrainActivity"
            },
            {
                "label" : "Tools",
                "contents":[
                    {
                        "package":"com.bluefletch.acc.themerapp"
                    },
                    {
                        "package" : "com.bluefletch.ems.support",
                        "nfcEnable": true
                    },
                    {
                        "package" : "com.symbol.datawedge"
                    },
                    {
                        "package" : "com.symbol.tool.stagenow"
                    },
                    {
                        "package": "com.bluefletch.go"
                    }
                ]
            }
        ],

        "AppGroupB":[
            {
                "package" : "com.symbol.wfc.pttpro"
            },
            {
                "label" : "Vision Training",
                "package": "com.bluefletch.ems.vision",
                "activity": "FaceTrainActivity"
            },
            {
                "package": "com.bluefletch.ems.support",
                "nfcEnable": true
            },
            {
                "package": "com.android.calculator2"
            },
            {
                "package": "com.bluefletch.ems.deviceinformation"
            }
        ],
        "*": [
            {
                "label" : "BlueFletch",
                "url" : "https://bluefletch.com",
                "icon" : "/sdcard/DCIM/icons/bluefletch_logo.png"
            },
            {
                "package": "com.android.calculator2"
            },
            {
                "package" : "com.bluefletch.ems.support"
            },
            {
                "label" : "Tools",
                "contents":[
                    {
                        "package":"com.bluefletch.acc.themerapp"
                    },
                    {
                        "package" : "com.symbol.datawedge"
                    },
                    {
                        "package" : "com.symbol.tool.stagenow"
                    },
                    {
                        "package": "com.koushikdutta.vysor"
                    }
                ]
            }
        ]
    },

Layouts was introduced in Launcher 2.6.x.

Last updated