SDK Installation

Currently the DexCareSDK is supported on two platforms: iOS Swift and Android Kotlin. Both platforms are similar in how they act and are used. In some cases, there may be some platform-specific differences.

For each minor version bump, the SDK’s will deprecate methods, properties, etc as best we can. Any specific callouts can be seen in each platform’s CHANGELOG.

Mobile SDK’s are available in the public repos Android/iOS

  • Version 2.3.0 and above of the iOS SDK is built with Xcode 11.3.1 and Swift 5.1

    Version 6.0 and above is built as an .xcframework and needs Xcode 12+

    It is recommended to install the iOS SDK via Cocoapods.

    GitHub

    All releases are published to the DexCare SDK repo - https://github.com/DexCare/DexCareSDK-iOS.

    Cocoapods

    iOS SDK is available via a PodSpec.

    To install, add the following to your podfile.

     pod 'DexcareSDK', :git => 'https://github.com/Dexcare/DexcareSDK-iOS.git'
    

    or if you want a specific release

    pod 'DexcareSDK', :git => 'https://github.com/Dexcare/DexcareSDK-iOS.git', :tag => '6.1.0'
    

    Manual installation

    If you’re a glutton for punishment, you can install the framework manually.

    1. Download the latest release from Health Consortium
    2. Select the project file from the project navigator on the left side of the project window
    3. Select the target for where you want to add the DexCare framework in the settings editor
    4. Select the Build Phases tab and click the small triangle next to the “Link Binary With Libraries” to view all the frameworks in your application
    5. To add the iOS DexCareSDK click the + below the list of frameworks
  • Installation with Gradle

    repositories {
        // required for rxpermissions (DexCare SDK dependency)
        maven { url "https://jitpack.io" }
    
    	maven {
            credentials {
                // You need to be authenticated in order to access the DexCare SDK binaries.
                // Even though they are public, GitHub still requires authentication.
                // Set up the environment variables below with your GitHub credentials.
                username System.getenv("DEXCARE_MAVEN_ACCOUNT") // GitHub email
                password System.getenv("DEXCARE_MAVEN_TOKEN") // GitHub access token
            }
    	    url "https://maven.pkg.github.com/DexCare/DexCareSDK-Android/"
    	}
    }
    

    Also add the following implementation to the dependencies section of your app’s build.gradle file:

    dependencies {
    	implementation "org.dexcare:dexcare:9.1.0"
    }
    

    Core Library Desugaring

    As of DexCare SDK 7.0, if your app has a minimum target API lower than 26, you will also need to enable core library desugaring in order to use the Java Time library on those lower API versions.

    Follow the Android guide here: https://developer.android.com/studio/write/java8-support#library-desugaring

    ProGuard

    If your app is using ProGuard, you’ll want to add the following to your proguard-rules.pro file:

    # DexCareSDK
    -keep class dexcare.** { *; }
    -keep class org.dexcare.** { *; }
    
    # OpenTok
    -keep class org.otwebrtc.** { *; }
    

    Dependencies

    The DexCare SDK requires data binding to be enabled in your project. Enable the dataBinding option in your build.gradle file:

    android {
        buildFeatures {
            dataBinding = true
        }
    }
    

    The DexCare SDK also requires Firebase Messaging to register the android device for push notifications during a Virtual Visit (see FirebaseMessaging.getToken()). Registering for Push Notifications is currently a hard requirement for starting a Virtual Visit, but it may be made optional in a future version.

    Otherwise, there should not be any major dependency conflicts between the SDK and your app. You can run the gradle task dependencies to get a full dependency tree of all libraries used in your project, including the current version of the DexCare SDK.

    Version 4.0, 5.0, and 6.0 of the DexCare SDK are using Kotlin version 1.4.20.

    Version 7.0 of the DexCare SDK is using Kotlin version 1.5.0.

    Version 7.1 of the DexCare SDK is using Kotlin version 1.5.21.

    Version 7.2.* , 8.0.* , and 8.1.* of the DexCare SDK are using Kotlin version 1.6.10.

    Version 8.2.* up to 8.3.0 of the DexCare SDKs are using Kotlin version 1.7.0.

    Version 8.3.1 up to 9.0.0 of the DexCare SDKs are using Kotlin version 1.8.0.

    Version 9.1.0 of the DexCare SDK uses Kotlin version 1.9.21.