A new configuration paradigm has been introduced starting from SDK 1.32: ConfigurationManager class and Intents class.
With the release of Datalogic SDK 1.32, Datalogic has completed the revamp of the Datalogic Android Mobile Devices configuration paradigm that began with the introduction of the ConfigurationManager class in SDK 1.27 and with the ACTION_CONFIGURATION_COMMIT of the Intents class in SDK 1.29.
In this new paradigm, the device exposes its settings organized as a tree, where the intermediate nodes are logical groups of properties and the leaves are the properties themselves, each with its own unique identifier.
Manage the device configuration via code: the ConfigurationManager class.
The ConfigurationManager class gives the developer the ability to directly access each device configuration property, or browse and set them thruogh a simple and iterable collection of PropertyID, organized in PropertyGroupID.
Optionally, a third party app can also implement the ConfigurationChangeListener interface, to be notified about any configuration change operated by the user, or by other apps that dinamically modifyed and committed some device parameter at runtime. If a change occurs, onConfigurationChanged method will be called to report the list of all the changed property and their related new values.
More info is available in the article How to: Manage a device configuration through the ConfigurationManager class.
Configure the device through Intents: ACTION_CONFIGURATION_COMMIT and the Datalogic Intents class.
With the new configuration paradimg introduced with the Datalogic SDK 1.32 the whole device configuration can also be changed withouth need to direclty access the Datalogic SDK's programming libraries, but simply by sending generic Broadcast Intents to the system, either via code, or ADB command line for testing purposes, or through EMMs or scripts.
Now, the Datalogic Intents class implements a BroadcastReceiver for a new ACTION_CONFIGURATION_COMMIT action, that operates as a bridge towards the underlying ConfigurationManager class descrived above. In this way all the setting available through the PropertyID class can also be set with a simple Broadcast Intent.
Using the same IDs and values provided by the PropertyID class, is possible to create a Java HashMap of all the required changes and pass them to the "Configuration Commit" action as a Intent Extra (
EXTRA_CONFIGURATION_CHANGED_MAP), or specify them in terms of "Lists of strings" ( '--easl' ADB option) or simple data string (--es ADB option) for an easy integration with ADB or common EMMs scripting linguages.
More info is available in the article How to: Configure Datalogic devices through an Intent via code, ADB or EMM scripts.