Collect custom device data

This system allows you to collect arbitrary information from any device.
To use the function, you need to have Manager v1.4.0 or never installed on the device.

To enabled custom data, click on your account in the top right, click on Manage account settings and Edit custom data.

The Name field must be unique for your account and can only contain lowercases letters, numbers and underscores.
The Label will be used to show the value in the device summary. The Type can be one of the following, depending on the type, there will be more arguments.

Custom data types

Build property

Read a build property as it would be returned by adb shell getprop [key].

Arguments

Key: The key/name of the property

Error codes

This command has no error codes. If the key does not exist, and empty value is returned.

Setting

Read the value of a system setting in the Global, System or Secure group

Arguments

Type: The group of the setting. g for Global, s for System, e for Secure Key: The key/name of the setting

Error codes

This command has no error codes. If the key does not exist, and empty value is returned.

File

Read the content of a text file on teh device

Arguments

File: The absolute path to the file on the device

Error codes

If an error occurs, one of the following values will be shown as the custom data

ERROR_FILE_NOT_FOUND: File was not found on the device
ERROR_FILE_NO_ACCESS: Manager was unable to access the file
ERROR_FILE_READ_FAILED: Unknown error while reading the file

XML File

Read a attribute or text node from a xml file on the device.

Arguments

File: The absolute path to the xml file on the device
xPath: The xPath to the target node within the file
Value: The value to read. Use text() to read the text content of the node or attr(x) to read the attribute of the node with the name x

Error codes

If an error occurs, one of the following values will be shown as the custom data

ERROR_FILE_NOT_FOUND: File was not found on the device
ERROR_FILE_NO_ACCESS: Manager was unable to access the file
ERROR_FILE_READ_FAILED: Unknown error while reading the file
ERROR_XML_PARSE: Error while parsing the file as XML
ERROR_XML_XPATH: Error while evaluating the xPath
ERROR_XML_NODE_NOT_FOUND: The xPath did not return any node
ERROR_XML_UNKNOWN_VALUE_TYPE: The value argument is unsupported

JSON File

Read a value from a json file on the device.

Arguments

File: The absolute path to the xml file on the device
xPath: The JsonPath to the target value within the file

Error codes

If an error occurs, one of the following values will be shown as the custom data

ERROR_FILE_NOT_FOUND: File was not found on the device
ERROR_FILE_NO_ACCESS: Manager was unable to access the file
ERROR_FILE_READ_FAILED: Unknown error while reading the file
ERROR_JSON_PARSE: Error while parsing the file as JSON
ERROR_JSON_NODE_NOT_FOUND: The JsonPath did not return any entry
ERROR_JSON_MULTIPLE_NODES: The JsonPath return more than one entry

Content Provider

Read a value from a content provider that is part of any app.

Arguments

URI: The URI of the content provider. This is usually content:// followed by the authority defined in the AndroidManifest
Column: The name of column to read the value from

Error codes

If an error occurs, one of the following values will be shown as the custom data

ERROR_CONTENT_URI_NOT_FOUND: No content provider was found for the provided UIR
ERROR_CONTENT_EMPTY: The cursor had no rows
ERROR_CONTENT_MULTIPLE_RESULTS: The cursor had more then one row
ERROR_CONTENT_UNKNOWN_COLUMN: The column was not found in the cursor