Feature: Layouts

Overview

The applications displayed within the Launcher UI are controlled by the Layouts configuration. This configuration allows for whitelisting of applications, display of shortcuts, and organizing applications into folders.

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 controlled by group "*".

Groups / Roles

Within each group/role, there exist applications, folders, and shortcuts. Launcher will build the UI based on all matching Groups/Roles that a user belongs, thus if a user belongs to multiple Groups/Roles, they will get additional content.

    "layouts" : {
        "AppGroupA":[ -Logged in user with Role of AppGroupA will have access to these Applications.- ],
        "AppGroupB":[ -Logged in Associates will have access to these Applications.- ],
        "*": [ -OPEN ZONE definition of applications- ]
    },

Examples:

  1. A device is booted up, the following will be displayed on the "OpenZone" (represented by the "*" in the Layouts groupings).

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

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

  4. User Anna logs into the device and she is a member of group "AppGroupA and AppGroupB", she would see the contents of "AppGroupA" and "AppGroupB" groupings.

  5. User Bob logs into the device and he is a member of group "AppGroupB and AppGroupA", she would see the contents of "AppGroupB" and "AppGroupA" groupings.

Applications

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.

Display an application:

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

Changing the Start Activity and Label:

{
    "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
},

See Launcher Configurations for more information on the Application object.

Shortcuts

Shortcuts are links to Web Addresses (URLS). A shortcut will navigate the default webbrowser to the desired URL. If the BlueFletch Browser is being used, "showUrl", "showTitle", "allowCookiePreview" and "fixOrientation" will determine the visual settings of the browser. "nfcEnable" will adjust the NFC Settings.

{
    "label" : "BlueFletch",
    "url" : "https://bluefletch.com",
    "icon" : "/sdcard/DCIM/icons/bluefletch_logo.png",
    "showUrl" : false,
    "showTitle" : false,
    "allowCookiePreview" : false,
    "fixOrientation" : false,
    "nfcEnable": true
},

See Launcher Configurations for more information on the Shortcut object.

Folders

Folders provide a mechanism to organize applications and/or shortcuts into different groups.

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

See Launcher Configurations for more information on the Folder object.

Technical Notes

Configuration :

Example:

    "layouts" : {
        "AppGroupA":[
            {
                "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"
                    }
                ]
            }
        ]
    },

Feature Introduced

Feature Introduced in Launcher 2.6.x.

Replaces Groups / Group_Inclusion whitelisting of applications.