Skip to main content

Installation

MPP SDK Android provides functionality for Android Push Provisioning support.

Requirements

  • Google Pay

    • Agreement with Google granting permission to use the Google Pay API for Push Provisioning.
    • Whitelisted app package name and SHA-256 certificate fingerprint by Google.
  • Samsung Pay

    • Registration with Samsung Pay Developers in order to create the appropriate service type for their applications.
    • Agreement with Samsung granting permission to use the Samsung Pay API for Push Provisioning.
    • Create service and Register app for "App to App card enrollment".
    • Service ID (SID) assigned by the Samsung Pay Developers portal when service is created.
  • Android version must be 5.1 (Lollipop, API level 22) or above.

  • Device must be able to connect to the Internet.

Installation

It is recommended to use Android Studio and Gradle to build the project.

Gradle Configuration

MPP SDK should be added to the project as a standard Android dependency. SDK is hosted in a private Maven repository, so you need to configure build.gradle by setting the assigned URL and credentials.

Environments:

  • test - test environment
  • prod - production environment

Library Repository and Dependencies

info

Nexus Repository credentials have changed when upgrading from Legacy version. Contact MeaWallet for new credentials.

build.gradle
repositories {
maven {
url 'https://nexus.ext.meawallet.com/repository/mpp-android-group/'

credentials {
username '<user>'
password '<password>'
}
}
}

dependencies {
debugImplementation 'com.meawallet:mpp-<environment>:<version>-debug'
releaseImplementation 'com.meawallet:mpp-<environment>:<version>'
}

Configuration

  1. Download mea_config.<issuer>.zip.

  2. Unzip the archive. Archive contains configuration file mea_config.

  3. Add mea_config to Android App resources res/raw folder. Library automatically loads configuration from app bundle during runtime.

Library Repository and Dependencies (Legacy version 1.0.1 and older)

build.gradle
repositories {
maven {
url 'https://nexus.ext.meawallet.com/repository/<repository>'

credentials {
username '<user>'
password '<password>'
}
}
}

dependencies {
...
debugImplementation 'com.meawallet:mpp-<issuer>-<environment>:<version>-debug'
releaseImplementation 'com.meawallet:mpp-<issuer>-<environment>:<version>'
...
}

App Manifest

It is not necessary to specify any permissions for SDK in AndroidManifest.xml file. A special marker tools:overrideLibrary can be used with uses-sdk declaration to override importing a library with minimum SDK version above application's minimum SDK version. Without such a marker manifest merger fails with an error. The marker allow users to select which libraries can be imported ignoring the minimum SDK version.

MPP SDK is using the following permissions that are merged with the app manifest file:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>

Enabling Issuer App for Google Pay Push Provisioning

To get access to Google Pay documentation use the following links:

Google grants access to the Push Provisioning API only to participating financial institutions. Therefore, issuer apps need to be whitelisted before they can call the API.

Google Pay - Issuers - Android Push Provisioning API - Whitelist your app

... if Google Pay has not yet launched in your country, you need to test with the special 'Alienfood' version of the Google Pay app.

Google Pay - Issuers - Get the Google Pay app