Profile Client Intents Overview
Profile Client Intents Overview

Profile Client Intents Overview

The API consists of a series of intents that can be invoked via the following methods:
  • StageNow
    : This staging software can generate an Android intent as described at Zebra TechDocs. The intent can be sent immediately, scheduled, or triggered by pressing a button or sensor.
  • MDM
    : An Android intent can be generated by various MDMs, such as the following:
    • Soti Mobicontrol
      : SOTI MOBICONTROL
    • Airwatch/Workspace ONE
      VMWARE Workspace One
  • Android application
    : An Android application can generate an intent to another application on the device.  For more information, refer to Android Developers Documentation .
When WFC Profile Client Android receives the intent, it takes the action indicated by the intent.
This guide first describes the flow of intents, and then each intent in detail.
Third-party applications can use Profile Manager intents to start the Profile Client, load configuration, log in and log out, and request status. In addition, the Profile Client can send two intents back to the third-party application to signal login completion and respond to a status request.
The following steps describe typical intent usage, also illustrated in the diagram that follows:
  1. The ACTION_NEW_CONFIG intent starts (or restarts) and configures the Profile Client. This intent is accompanied by the location of a JSON configuration file or a JSON configuration blob. Typically, configuration setup through this intent only happens once.
    The LoginActivity intent can start (or restart) the Profile Client without configuration.
  2. After starting the Profile Client, the ACTION_LOGIN intent can be sent to log it in to the Profile Manager-
    If the login information sent with this intent includes a request ID and package name, the Profile Client sends an ACTION_LOGIN_RESPONSE when login is completed. The response is not sent until the user selects a role (if applicable) and  the WFC Voice and/or PTT Pro clients are logged in.
  3. The third-party application may periodically request login status from the Profile Client through ACTION_LOGIN_STATUS intent. Upon receipt, the Profile Client responds with ACTION_LOGIN_STATUS_RESPONSE.
  • The
    ACTION_LOGIN_STATUS
    is not intended to be used while waiting for an ACTION_LOGIN_RESPONSE. The returned status may indicate that the Profile Client is logged in while the login procedure is still in process.
  • It is recommended to send all broadcast intents with
    package
    set to
    com.zebra.dfs
    as a security measure.
  • ACTION_SERVICE_LOGOUT logs out the Profile Client.
The following diagram illustrates the flow of intents.