Skip to main content

ProGlove Documentation

Install INSIGHT Mobile

Important

If an INSIGHT Mobile Beta version (lower than v1.0) is installed on your device, please uninstall it before installing a stable release.

Prerequisite: INSIGHT webportal account activated.

  1. Select Downloads from the top-right menu.

  2. In the INSIGHT Mobile (Android) section, check the box to accept the End-user license agreement.

    The Download button becomes available.

  3. Click Download.

    The .apk file downloads to your desktop device.

  4. Transfer the .apk file to the Android/data/de.proglove.connect folder on your Android device via USB cable.

  5. Open the .apk file on your Android device.

    INSIGHT Mobile installs automatically.

Important

Due to limitations of Android 11, you can no longer copy files to the Android/data/de.proglove.connect folder using the Android device only or via MDM (Mobile Device Management). For earlier Android versions, downloading the .apk directly to the Android device still works. On Android 11, you can still use the adb push command to push or pull files or folders to Android/data/de.proglove.connect.

InsightMobileDownload.png

Important

Permissions for installing third party applications (unknown sources) must be granted on your Android device.

After the installation, you can set the necessary Android device permissions manually in the app or set them automatically using your MDM System.

Android 11 limitations

Android 11 redefined the following storage-related permissions: READ_EXTERNAL_STORAGE, WRITE_EXTERNAL_STORAGE, and MANAGE_EXTERNAL_STORAGE (for more information, see Scoped Storage.) Currently, this prevents the user to:

  • Copy-paste the files to the Android/data/de.proglove.connect folder using the Android device only

  • Delete the files from the Android/data/de.proglove.connect folder using the Android device only

  • Implement apps that push / change / delete these files

  • Get to the log files and share them using the Android device only or via MDM

  • Push the files to the Android/data/de.proglove.connect folder using an MDM

  • Access the Android/data/de.proglove.connect folder and its content using a PC (by connecting the device via USB) if the app is installed on a work (managed) profile.

MDMs with Android Enterprise or managed Google Play

If you are using an MDM (Mobile Device Management) solution with Android Enterprise support or a company-managed Google Play, you can use the Managed configurations (previously known as AppRestrictions) to configure the device using the solution below that is running on the work profile.

To make the INSIGHT Mobile app available via your managed Google Play account you need to:

  • Create a managed Google Play account (to learn more, see Android Enterprise)

  • Bind the managed Google Play account to the MDM system

  • Get the organization ID from this page

  • Provide the organization ID to your ProGlove representative and ask for it to be added to the supported list

When this is completed, you can use the ProGlove configuration file content (Base64 encoded) as the available key in your MDM. The string is parsed inside the app and stored as a file identically to scanning the configuration barcode. The propagation is done every time the app is started or the configuration content is updated.

Note

  • In case of invalid Base64 content, the file content will be neglected

  • In case of an empty string, the file content will be neglected

  • IGNORE (not case sensitive) - this string will ignore the file content key so that the integrator can add the configuration file a different integration method

  • REMOVE (not case sensitive) - this string will remove the file content previously loaded and set the default one (the same as a freshly installed application)

Custom device name

Match with a third-party system or simply identify your devices more accurately by setting a custom device name using a managed configuration within your MDM or the Intent API key broadcast.

This can help you bypass the built-in Android 10+ limitations pertaining to sharing device details, and allows you to add custom name/value to the staging file within your MDM. The custom value, i.e. customer_custom_identifier that you define, will be visible to your workforce in the INSIGHT Mobile (Android) app, and sent along with the data to INSIGHT Analytics for reporting purposes and sharper device identification.

For more details on reporting, see export data.

Once the value is set, you can see it displayed as an additional field in the INSIGHT connectivity widget within INSIGHT Mobile, as shown in the image below. That value will also be shared with INSIGHT webportal with every event.

Example created in a test mobile MDM environment and how it is displayed in INSIGHT Mobile (Android).

CustomString.png
Example_Value_for_customer_custom_identifier.png

Note

We recommend setting up the Intent key and value prior to starting the application and work processes.

Tip

Ensure you have the correct value (macro) for retrieving your devices' serial numbers from your third-party system as this may vary (i.e. %SERIALNUM%, {DeviceSerialNumber}, etc.).

Set a custom device name using MDM

You can change the value by broadcasting a different message, bypass (ignore) it to use alternative integration methods, or remove it when needed. Sending the IGNORE value will simply ignore the entered information and allow the integrator to set the value in a different way (using adb or other API methods). Sending REMOVE as a value will remove the entered information, as well as the customer_custom_identifier field from the INSIGHT Mobile (Android) app.

Table 19. Managed configurations

File

Key

Valid values

Supported options

ProGlove.proconfig

configuration_content_android_enterprise_key

Only valid base 64 encoded config files

SET, IGNORE, REMOVE

levelname_provisioning_package.fleet

fleet_provision_content_android_enterprise_key

Only valid base 64 encoded fleet files

SET, IGNORE

customer_custom_identifier

customer_custom_identifier_content_android_enterprise_key

Any string containing 1 - 256 characters

SET, IGNORE, REMOVE



Set a custom device name using Intent

Alternatively, in case setting the custom device name isn't possible via an MDM, you can set it by broadcasting an Intent message containing the Action and Extra values, as listed below:

  • Action: com.proglove.api.SET_EVENT_TAG

  • Extras:

    • com.proglove.api.EVENT_TAG_KEY = "customer_custom_identifier"

    • com.proglove.api.EVENT_TAG_VALUE = "test"

    • com.proglove.api.EVENT_TAG_PERSISTENT = "true"

adb shell am broadcast -a com.proglove.api.SET_EVENT_TAG --es com.proglove.api.EVENT_TAG_KEY "customer_custom_identifier" --es com.proglove.api.EVENT_TAG_VALUE "TEST" --es com.proglove.api.EVENT_TAG_PERSISTENT true

To learn more, see Android developer's page, Admin's perspective, and Samsung KNOX page.

Base64 String

When your Android devices are affected by scoped storage limitations introduced with Android 11, or when access to the internet or your MDM is restricted, you can enable sending both provisioning and configuration files directly to the INSIGHT Mobile (Android) app using Base64 string.

Important

Minimum required version of INSIGHT Mobile (Android) app is 1.29.0.

No mediators, no permission restrictions, no access to internet or the INSIGHT webportal? No worries - read more below.

Intent messages with Base64 content

The INSIGHT Mobile (Android) app listens for Intent messages and, once received, creates corresponding files in the app-specific folder so they can later be processed as usual. This enables you to execute a script with common adb commands and send the content to INSIGHT Mobile.

Execute using adb command

```
    adb shell "am start -n 'de.proglove.connect/.app.main.MainActivity' -a 'com.proglove.api.FILES_DATA' -e 'com.proglove.api.extra.PROCONFIG_FILE_CONTENT' 'Your Base64 String generated step above'"
```

Execute using native app

val intent = Intent().apply {
    component =
    ComponentName.unflattenFromString("de.proglove.connect/.app.main.MainActivity")
    action = "com.proglove.api.FILES_DATA"
    putExtra("com.proglove.api.extra.PROCONFIG_FILE_CONTENT", "Your Base64 String here")
}

try {
    startActivity(intent)
} catch (e: ActivityNotFoundException) {
    // Insight Mobile was not found
}

Note

  • Using adb, multiple extras for different file types can be put one after the other with option -e or --es.

  • Multiple extras for different file types are allowed in the Intent.

Table 20. Intent specification

Mandatory

Value attribute

Description

Component

XMark.png

package id: de.proglove.connect

class: de.proglove.connect.app.main.MainActivity

  • Needed only for explicit Intent.

  • Explicit Intent is sent with context.startActivity(Intent) from the code.

  • Explicit Intent is sent with am start ... using ADB.

Action

CheckMark_small.png

com.proglove.api.FILES_DATA

  • Needed for both implicit and explicit Intent.

  • Implicit Intent is sent with context.broadcast(Intent) from the code.

  • Implicit Intent is sent with am start ... using ADB.

CheckMark_small.png (reserved for INSIGHT Mobile File Assistant)

com.proglove.api.FILES_DATA_FILE_ASSISTANT

  • Intended to be used only by the INSIGHT Mobile File Assistant.

  • To process non-PgLicense files, a valid PgLicense in the app-specific folder is required.

  • PgLicense is always extracted and stored first.

Extras

CheckMark_small.png (one or multiple)

key:

  • com.proglove.api.extra.PG_LICENSE_FILE_CONTENT

value:

  • Base64 String representing desired PgLicense file's data

  • remove

Provides data from the PgLicense file or removes the used file.

key:

  • com.proglove.api.extra.PROCONFIG_FILE_CONTENT

value:

  • Base64 String representing desired ProConfig file's data

  • remove

Provides data from the ProConfig file or removes the used file.

key:

  • com.proglove.api.extra.FLEET_FILE_CONTENT

value:

  • Base64 String representing desired Fleet provisioning file's data

Provides data from the Fleet provisioning file.



Note

  • In case of implicit Intent, INSIGHT Mobile must be running before it is broadcasted in order to receive it.

  • In case of explicit Intent, INSIGHT Mobile is started but must have a required Action to be processed. The main screen will show but the pairing screen will not be triggered.

Sending configuration files to INSIGHT Mobile:
  1. Log in to INSIGHT webportal and select Configurations.

  2. In the Device Configuration tab, click New Configuration in the top right corner to add a new configuration. Once it's set up, click Save and select Copy String option to apply it.

  3. Alternatively, select an existing configuration from the list, open its menu and click Apply Configuration, then click Copy String.

  4. The Base64 string will be copied to your clipboard.

  5. Add that string (your specific files) to the Intent messages listed above and execute.

Sending provisioning files to INSIGHT Mobile
  1. Log in to INSIGHT webportal and select Devices.

  2. Select the level to which you want to connect your Android device, open the three-dot menu next to it and click + Connect Devices.

  3. Keep the selection on INSIGHT Mobile (Android) and Connect with one file for multiple devices, and click Next.

  4. In the Managed Google Play setup section, click Generate to generate and then once again to copy the Base64 String containing the provisioning file and data. Click Done to close the window and go back to the level.

  5. Add that string to the Intent messages listed above and execute.

    CopyBase64StringProvisioning.png
INSIGHT Mobile File Assistant

Enable file management of Android devices when affected by scoped storage limitations introduced with Android 11 and when the use of older SOTI MobiControl versions is required.

If storage limitations affect the INSIGHT Mobile (Android) app to receive files and be configured, instead of using more technical ways, such as ADB commands, we offer the INSIGHT Mobile File Assistant solution. Relying fully on the INSIGHT Mobile (Android) app, the File Assistant offers the simplest way for managing your Android device's storage. It takes files from the public storage and provides it to INSIGHT Mobile via Intent, where it is stored inside the app-specific folder and processed per usual.

Important

  • Minimum required version of INSIGHT Mobile (Android) app is 1.29.0.

  • INSIGHT Mobile File Assistant is only available within the INSIGHT webportal.

INSIGHT Mobile File Assistant is an excellent way to avoid using scripts and install other apps. It is controlled by the INSIGHT Mobile (Android) app and requires a valid PgLicence, so INSIGHT Mobile can accept the necessary files.

To ensure the PgLicence works as intended, you need store the license (.pgkey file) in a shared folder on your device. Create the ProGlove folder (i.e. /sdcard/ProGlove) and import the license. The File Assistant will always check this folder for files that should be applied to INSIGHT Mobile.

We recommend granting the "All Files Access" permission to the File Assistant before starting the process to make it seamless. Below is the ADB command to grant all permissions and enable file management:

adb shell appops set --uid de.proglove.connect.fileassistant MANAGE_EXTERNAL_STORAGE allow

Additionally, we recommend force-stopping the INSIGHT Mobile app, in case it's running in the background. Once INSIGHT Mobile restarts, it will automatically launch the INSIGHT Mobile File Assistant and ask you to allow access to all files. Follow the prompts to enable all permissions.

Note

  • To obtain a PgLicence, contact your ProGlove representative.

  • A ProGlove folder needs to be created in the root of shared storage. On most devices, it is not case sensitive.

Supported file types:

  • Licence file (.pgkey) - Provided to you by ProGlove.

  • Configuration file (.proconfig) - Downloaded from the INSIGHT webportal.

  • Staging centrificate (.fleet) - Downloaded from the INSIGHT webportal. These files contain staging certificates and serve to provision the Android device as a Connectivity Device in INSIGHT.

  • Provisioning file (.provision) - Downloaded from the INSIGHT webportal. A ZIP archive used to provision your device as a Connectivity Device in INSIGHT.