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 Dependencies
Nexus Repository credentials have changed when upgrading from Legacy version. Contact MeaWallet for new credentials.
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>'
}
Samsung Pay Library Dependency
Samsung Pay library dependency is not included by default. Add the following dependency to use MeaPushProvisioning.SamsungPay
interface.
dependencies {
// ...
implementation "com.samsung.android.sdk:samsungpay:2.17"
// ...
}
Configuration
Download
mea_config.<issuer>.zip
.Unzip the archive. Archive contains configuration file
mea_config
.Add
mea_config
to Android App resourcesres/raw
folder. Library automatically loads configuration from app bundle during runtime.
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:
- Requesting access: https://developers.google.com/pay/issuers/requesting-access
- Google Pay guides: https://developers.google.com/pay/issuers/guides/overview/about-google-pay
- Google Pay Push Provisioning API documentation: https://developers.google.com/pay/issuers/push-provisioning-api/
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.