Skip to main content

Datalogic Android SDK 1.51

· 6 min read

Datalogic Android SDK 1.51 is now available.

This update introduces expanded Profile Manager capabilities, RFID and BLE tracker support for M12 RFID devices, and new connectivity, input, scanning, display, and security features for Android 15 devices.

Supported on Android 13 and Android 15​

Profile Manager​

  • Made editProfile() publicly available.
  • Added getProfile() to retrieve a profile's property map.
  • Added getProfileRule() to retrieve the characteristics of a profile rule.
  • Added getLoadedAutomaticProfile() to retrieve the name of the automatically loaded profile.

Profile Manager Intent-Based API​

  • Added ACTION_CREATE_PROFILE, ACTION_DELETE_PROFILE, ACTION_EDIT_PROFILE, ACTION_LOAD_PROFILE, and ACTION_UNLOAD_PROFILE actions.
  • Added ACTION_ADD_PROFILE_RULE and ACTION_REMOVE_PROFILE_RULE for profile rule management, including URL rules.
  • Added ACTION_QUERY_PROFILE_MANAGER to query profiles, profile rules, loaded profiles, and the lists of available profiles and rules.
  • Added EXTRA_RESPONSE_ACTION and EXTRA_STATUS_CODE for asynchronous responses.
  • Added profile extras EXTRA_PROFILE_NAME, EXTRA_PROFILE_PROPERTIES, EXTRA_PROFILE_DESCRIPTION, and EXTRA_PROFILE_PERSISTENCE.
  • Added profile rule extras EXTRA_PROFILE_RULE_NAME, EXTRA_PROFILE_RULE_PROFILE, EXTRA_PROFILE_RULE_PACKAGE, EXTRA_PROFILE_RULE_ACTIVITIES, and EXTRA_PROFILE_RULE_URL.
  • Added query selector extras EXTRA_LOADED_MANUAL_PROFILE, EXTRA_LOADED_AUTOMATIC_PROFILE, EXTRA_PROFILES_LIST, and EXTRA_PROFILE_RULES_LIST.

Supported on M12 RFID Devices Running Android 15 or Later​

BLE Tracker​

  • Added BLE_GROUP in PropertyGroupID as the root group for BLE configuration.
  • Added BLE_ADVERTISING_POLICY to control BLE advertising behavior.
  • Added BLE_ADVERTISING_BEACON_PAYLOAD_POLICY to select the advertising beacon payload policy.
  • Added BLE_ADVERTISING_BEACON_PAYLOAD_CUSTOM to set a custom advertising beacon payload.
  • Added BLE_RINGING_SOUND to select the ringing sound for BLE finder commands.
  • Added AdvertisingPolicy enum with DISABLED, ENABLED, and AUTOMATIC values.
  • Added AdvertisingBeaconPayloadPolicy enum with MODEL_SN and CUSTOM values.
  • Added RingingSound enum with BARIUM, BEEP_BEEP_BEEP_ALARM, BUZZER_ALARM, CESIUM, HELIUM, KRYPTON, OSMIUM, PIEZO_ALARM, SCANDIUM, and CUSTOM values.

RFID Subsystem​

  • Added RFID subsystem support with new RfidManager APIs, allowing apps to start and stop inventory sessions, receive tag events, and perform read, write, and lock operations on tags.
  • Added RfidManager, RfidResult, RfidFilter, and RfidPassword.
  • Added RfidReadListener, RfidStartListener, RfidStopListener, and RfidTimeoutListener.
  • Added RfidLockObject, RfidLockType, RfidMemoryBankRegion, and RfidException.

RFID Configuration​

  • Added RFID configuration support in Configuration Manager for centralized control of RFID behavior, RF profile, timing, and Scanner service injection.
  • Added RFID_GROUP in PropertyGroupID as the root group for RFID configuration.
  • Added RFID_ENABLE to enable or disable RFID functionality.
  • Added RFID_POWER_LEVEL to set the RFID transmission power.
  • Added RFID_SESSION_POLICY to select the RFID session policy.
  • Added RFID_Q_PARAMETER_POLICY to configure the RFID Q parameter policy.
  • Added RFID_INVENTORY_POLICY to set timed or continuous inventory behavior.
  • Added RFID_TIMEOUT to define the inventory timeout.
  • Added RFID_TARGET_POLICY to select the RFID target policy.
  • Added RFID_MODE_POLICY to control how read tags are reported.
  • Added RFID_INJECT_TO_SCANNER to forward RFID reads to the Scanner service.
  • Added RFID_PROFILE_POLICY to select the RFID RF and modulation profile.
  • Added enums RfidSessionPolicy, RfidQParameterPolicy, RfidInventoryPolicy, RfidTargetPolicy, RfidModePolicy, and RfidProfilePolicy.
  • Added KEYCODE_RFID to DLKeyEvent and RFID to BarcodeID.

Supported on All Android 15 Devices​

Connectivity​

  • Added WIFI_MOBILE_PRIORITY_POLICY to select whether Wi-Fi or mobile data is preferred when both are available.
  • Added WifiMobilePriorityPolicy enum with DEFAULT and MOBILE_PREFERRED values.
  • Unified the Wi-Fi connected and disconnected scan interval configuration for Android 15 and later.
  • Added WIFI_SCREEN_ON_SCAN_INTERVAL to set the minimum interval between screen-on Wi-Fi scans, regardless of connection state.
  • Added WIFI_SCREEN_ON_SCAN_INTERVAL_MAX to set the maximum interval between screen-on Wi-Fi scans.
  • The existing WIFI_SCAN_INTERVAL, WIFI_SCAN_INTERVAL_MAX, WIFI_CONNECTED_SCAN_INTERVAL, and WIFI_CONNECTED_SCAN_INTERVAL_MAX properties apply to versions earlier than Android 15.
  • Added NetworkManager to monitor network events and receive DHCP options.
  • Added addNetworkEventListener() and removeNetworkEventListener() to register and unregister network event listeners.
  • Added DhcpOption and SubOption classes to represent DHCP options.

Input and Keyboard​

  • Added InputTriggerEventListener in InputManager to receive trigger scancode press and release events with timestamps.
  • Added addInputTriggerEventListener() and removeInputTriggerEventListener().
  • Supported trigger scancodes include left, right, pistol, front, and push-to-talk.
  • Added VSCAN_DICTATE and VSCAN_PUSH_TO_TALK to KeyboardManager.VScanCode.
  • Added KEYBOARD_LOGO_KEYS to configure Datalogic logo key scan code assignments.
  • Added ScanCode class in AdvancedKeyboard with hardware scan code constants for key mapping.
  • Added LogoKeys blob serializable class to manage logo key overlay configurations.

Joya Smart Pistol Trigger in Cradle​

  • Supported only on Joya Smart devices running Android 15 or later.
  • Added KEYBOARD_PISTOL_TRIGGER_IN_CRADLE_POLICY to select the action performed after a long pistol trigger press in the cradle.
  • Added KeyboardPistolTriggerInCradlePolicy enum with DISABLED, POWER_MENU, REBOOT, and POWER_OFF values.
  • Added KEYBOARD_PISTOL_TRIGGER_IN_CRADLE_POLICY_PERIOD to set the hold duration from 0 to 10000 milliseconds. The default is 2000 milliseconds.

Scanning​

  • Added PHARMACODE to the Symbology enum and the pharmacode member to ScannerProperties.
  • Added SNAP_OCR_LAST_RESULT_TIMEOUT to set the result timeout for Snap OCR operations.
  • Added SNAP_OCR_TEXT_BLOCK_FORMAT to define how OCR text blocks are segmented.
  • Added SnapOcrTextBlockFormat enum with PARAGRAPH, LINE, and WORD values.

Display and User Experience​

  • Added SCREEN_ROTATION_LOCK_POLICY to lock the display orientation.
  • Added ScreenRotationLockPolicy enum with SENSOR_DEPENDENT, PORTRAIT, LANDSCAPE, INVERTED_PORTRAIT, and INVERTED_LANDSCAPE values.
  • Added NAVIGATION_BAR_POLICY to switch between 3-button and gesture navigation.
  • Added NavigationBarPolicy enum with THREE_BUTTONS and GESTURE values.
  • Added USER_BRIGHTNESS_PERSISTENT_ENABLED to keep the user brightness setting across reboots when auto brightness is enabled.
  • Added POWER_INDICATOR_ENABLED to enable or disable the power notification LED.
  • Added setLedEnabled() in LedManager to enable or disable a LED so that no other app can turn it on until it is re-enabled.
  • Added getLedEnabled() in LedManager to check whether a LED is currently enabled.
  • Added a dark theme option to Enterprise Battery Saver profiles with isDarkThemeEnabled() and the withDarkThemeEnabled() builder method in EnterpriseBatterySaverProfiles.Profile.

Security and System​

  • Added KeychainManager for device certificate management.
  • Added installCaCertificate() to install a DER-encoded CA certificate into the device's trusted certificate store.
  • Added removeCaCertificate() to remove a CA certificate from the device's trusted certificate store.
  • Added GOOGLE_PLAY_UPDATE_ENABLED to enable or disable auto-update for Google Play apps.
  • Added GOOGLE_PLAY_UPDATE_BLACKLIST to define a blacklist of Google Play packages to prevent from updating, managed through StringArrayBlob.
  • Added USB_DEX_MODE_ENABLED to enable or disable DEX mode for USB connections.

You can access the documentation here.