---
title: "Mobile SDK Release - 10282021"
canonical: "https://help.validic.com/space/VRN/blog/3070197761/Mobile%20SDK%20Release%20-%2010282021"
format: markdown
---
## Android Native Libraries Released - October 28, 2021

- Android Full Library v1.13.0-alpha
- Android Aggregator Library v1.13.0-alpha
- Android LifeScan OneTouch Library v1.13.0-alpha

## Android Native Changes

- **General**
  - Bump Android Gradle plugin to 7.0.3
  - Require Java 8 targetCompatibility
  - Add support for Android 12
    - Support required FLAG_IMMUTABLE and FLAG_MUTABLE for PendingIntent flags
    - Bump WorkManager version to 2.7.0-alpha05 for Android 12 support with PendingIntents
    - new ValidicInitializer androidx.startup Intializer that automatically calls ValidicMobile.getInstance().initialize(context). This call is deprecated and will be removed in the future.
  - Support for Android 5 (Lollipop) - 7.x (Nougat) will end in mid-Q1 2022 - an exact date is to be announced. Android 8 and up will continue to be supported by our hard-working implementation and support teams.
- **Bluetooth**
  - This Bluetooth framework is an alpha release of our Android 12 support. Please provide our support team ([support@validic.com](mailto:support@validic.com)) with any feedback you have on the Bluetooth framework API changes in this release.
  - Bump RxAndroidBLE dependency to v1.13.0
  - Improve Foracare IR 20b Read success when failing to disconnect
  - Add new dependencies for Kotlin coroutines and rxjava2. Several files have been converted to kotlin.
    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.1"  
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.5.1"
  - Converted Several public interfaces to Kotlin. Adjusted nullability.
  - New BluetoothRequests public api for interacting with Bluetooth Devices and peripherals.
  - Bluetooth Operations now return the BluetoothDevice that an operation was executed with.
  - Scanning for Passive Bluetooth Peripherals is now automatically initialized with an androidx.startup's Intializer implementation, ValidicBluetoothInitializer.
  - Fixed a bug where Passive Bluetooth Scanning would not restart if Bluetooth was turned off during a Pair or Read operation.
- **Sample Apps**
  - Bump compileSdkVersion and targetSdkVersion to 31
  - Request new BluetoothScan and BluetoothConnect permissions when interacting with BluetoothPeripherals
- **Samsung Health**
  - New dependencies on androidx.work:work-runtime, androidx.work:work-runtime-ktx, and org.jetbrains.kotlinx:kotlinx-coroutines-android
  - Observers are now managed using a CoroutineWorker instead of SHealthService. SHealthService has been removed.
  - New listener for events related to observers starting and stopping
  - add SHealthManager.getInstance().hasReadAccess(Set<String>) to check if permissions have previously been granted by an end user for a set of dataTypes.
  - SHealthListener.onError(error) has changed to return SHealthException that wraps all possible errors in the SDK. To retrieve the SHealthError use SHealthException.getSHealthError()
- **Vitalsnap (OCR)**
  - Fix cases where Vitalsnap would not start after granting permissions to the Camera