# Connect Android SDK Migration Guide
source: https://developer.mastercard.com/open-finance-au/documentation/connect/integrating-with-connect/android/android-sdk-migration/index.md

This migration guide provides step-by-step instructions for migrating from Connect Android SDK version 1.x to version 3.x and version 2.x to version 3.x. Follow the outlined changes carefully to ensure a smooth transition.

We recommend using the latest version of the SDK whenever possible.

## Migrating from v1.x to v3.x {#migrating-from-v1x-to-v3x}

To upgrade your app from the old v1.x Finicity Connect SDK to v3.x Mastercard Open Finance Connect SDK for Android, follow these steps.

### Step 1: Repository URL Update {#step-1-repository-url-update}

Update your root-level `build.gradle` file as follows:

**v1.x**

    buildscript {
      repositories {
        ...
        maven { url "https://finicity.jfrog.io/artifactory/finicity-connect-gradle-release-local" }
      }
    }

**v3.x**

    buildscript {
      repositories {
        ...
        google()
        mavenCentral()
      }
    }

### Step 2: Library Dependency Update {#step-2-library-dependency-update}

**v1.x**

In your app-level build.gradle file, the implementation dependency for Connect SDK version 1.x.x used to be specified as:

    dependencies {
     // ...
     implementation 'com.finicity.connect:connect-sdk:1.x.x'
    }

**v3.x**

In version 3.x, update the implementation dependency in your app-level `build.gradle` file to the following (replace `<version>` with the latest version of the SDK):

    dependencies {
     // ...
     implementation 'com.mastercard.openbanking.connect:connect-sdk:<version>'
    }

### Step 3: Interface Method Name Update {#step-3-interface-method-name-update}

**v1.x**

In version 1.x, The `EventHandler` interface used to have the following method signatures:

    public interface EventHandler {
      void onLoaded();
      void onDone(JSONObject doneEvent);
      void onCancel();
      void onError(JSONObject errorEvent);
      void onRouteEvent(JSONObject routeEvent);
      void onUserEvent(JSONObject userEvent);
    }

**v3.x**

In version 3.x, update the method names in the EventHandler interface as follows:

    public interface EventHandler {
      void onLoad();
      void onDone(JSONObject doneEvent);
      void onCancel(JSONObject cancelEvent);
      void onError(JSONObject errorEvent);
      void onRoute(JSONObject routeEvent);
      void onUser(JSONObject userEvent);
    }

If you have previously used `EventListener` make sure you use the new `EventHandler` interface.
