Releases: Ingenico-ePayments/connect-sdk-client-android
6.2.0
Added:
relaxMask(mask)
function toStringFormatter
.getMaskedValue(paymentProductFieldId)
andgetMaskedValue(paymentProductFieldId, mask)
functions toAccountOnFile
.setValidationRules()
function toDataRestrictions
.setValidationRules()
function toPaymentProductField
.deviceFingerprintEnabled()
andallowsInstallments()
functions toBasicPaymentProductGroup
.propertyName
andrequestId
optional properties toApiErrorResponse
.getMaskedValue(paymentProductFieldId)
toPaymentRequest.
getUnmaskedValue(paymentProductFieldId)
function toPaymentRequest
.
Changed:
- Target & Compile SDK versions have been updated to 34.
- Android Gradle Plugin has been updated to version 8.2.1.
- Dependencies have been updated.
Deprecated:
- All constructors of the different ValidationRules have been deprecated. These should not be used.
getMaskedLength()
inValidationRuleLength
has been deprecated, because it is not returned from the API.getAcquirerCountry()
inBasicPaymentProductGroup
has been deprecated, because it is not returned from the API.
Removed:
- The classes
CustomerDetailsAsyncTask
,CustomerDetailsRequest
,CustomerDetailsResponse
andGetCustomerDetails
have been removed, as well as thegetCustomerDetails
method inClientApi
,Session
,C2SCommunicator
. This functionality was not used by any payment products.
6.1.5
Fixed:
- Fixed an issue where publishing to Maven failed.
- Fixed an issue that occured when generating Javadoc.
6.1.4
Deprecated:
- Deprecated method
getUsedForLookup()
in classPaymentProductField
. - Deprecated the following
Constants
fields related to Arvato / AfterPay:PAYMENTPRODUCTID_AFTERPAY_INSTALLMENTS
PAYMENTPRODUCTID_AFTERPAY_INVOICE
INSTALLMENTPLAN_FIELD_ID
TERMSANDCONDITIONS_FIELD_ID
6.1.3
Fixed:
- Fixed an issue where publishing to Maven failed.
6.1.2
Fixed an issue that occured when generating Javadoc.
6.1.1
Added:
- Property
supportsMandates
to classBasicPaymentProduct
. - Property
authenticationIndicator
to classBasicPaymentProduct
. - Property
deviceFingerprintEnabled
to classBasicPaymentProduct
. - Property
fieldsWarning
to classPaymentProduct
.
6.1.0
- Changed:
- Added proguard rules that exclude the domain model from being obfuscated, as obfuscation can potentially break deserialization.
- Use UTF-8 instead of the system default charset for converting strings to bytes and vice versa.
- Code style improvements.
6.0.1
- Changed:
- Updated deprecated Android API usage.
- Updated dependencies.
- Updated target Android SDK version to 33.
- Removed:
- Removed unused code.
- Fixed:
- Fixed an issue where an unexpected exception could be caused by the SDK when providing too few digits in the
GetIINDetails
request. Instead of an exception, a success response with statusNOT_ENOUGH_DIGITS
will be returned. Please note that when this status occurs, other response fields will benull
. - Fixed an issue where assets, such as product logos, are not pre-loaded by the SDK by default. The SDK now automatically loads these assets. Disable preloading by calling
preLoadImages(false)
when initializing the SDK.
- Fixed an issue where an unexpected exception could be caused by the SDK when providing too few digits in the
6.0.0
The SDK has received major improvements to its architecture, and the error handling around network requests. As a result, most of the classes and functionality of the old architecture have been deprecated and will be removed in a future breaking release.
Many functions and classes that have been deprecated for a long time, have been removed.
Please see the migration guide in the documentation
folder to find more information about the new architecture, and for a detailed overview of what was removed.
- Added:
- Added a new entry point for the SDK:
ConnectSDK
. It should be initialized by callinginitialize
. After that, an instance ofClientApi
can be obtained to make requests to the Connect REST API. Calling any other method onConnectSDK
beforeinitialize
was called will result in aConnectSDKNotInitializedException
. TheencryptPaymentRequest
method that used to be called via Session, has been made available throughConnectSDK
. - Added a new class that performs network requests with improved error handling:
ClientApi
. This class replaces most of the functionality of theSession
class. - Added methods
getImageDrawable
andgetImageUrl
to classTooltip
.
- Added a new entry point for the SDK:
- Changed:
IllegalArgumentException
is thrown instead ofjava.security.InvalidParameterException
if invalid arguments are passed to methods.
- Deprecated:
- Deprecated classes
Session
,C2SCommunicator
andC2SCommunicatorConfiguration
in favour of the new SDK entrypointConnectSDK
and networking with improved error handling viaClientApi
. - Deprecated all classes that perform lower level networking functionality:
BasicPaymentItemsAsyncTask
,BasicPaymentProductGroupsAsyncTask
,BasicPaymentProductsAsyncTask
,ConvertAmountAsyncTask
,CustomerDetailsAsyncTask
,EncryptDataAsyncTask
,IinLookupAsyncTask
,LoadImageAsyncTask
,PaymentProductAsyncTask
,PaymentProductDirectoryAsyncTask
,PaymentProductGroupAsyncTask
andPublicKeyAsyncTaskandThirdPartyStatusAsyncTask
. They will be removed in a future major release. - Deprecated exceptions
BadPaymentItemException
,CommunicationException
andUnknownNetworkException
in favour ofUnknownNetworkResponseException
. - Deprecated all classes that are used for encryption:
SessionEncryptionHelper
,EncryptData
,Encryptor
andEncryptUtil
. They will be made internal to the SDK in a future major release. - Deprecated method
isGooglePayAllowed(Context, C2SCommunicator, BasicPaymentProduct)
of classGooglePayUtil
. Use methodisGooglePayAllowed(BasicPaymentProduct)
instead. - Deprecated class
AssetManager
. It will be made internal to the SDK in a future major release. - Deprecated all classes that are used for caching:
CacheHandler
,Preferences
,ReadInternalStorage
andWriteInternalStorage
. They will be made internal to the SDK in a future major release. - Deprecated class
TLSSocketFactory
. It will be removed in a future major release. - Deprecated method
getImage
of classTooltip
. UsegetImageDrawable
instead.
- Deprecated classes
- Removed:
- Removed enumerations
Region
andEnvironment
, as well as all corresponding methods and functionality. Please use the Create Client Session call of the Server to Server API to obtain the URLs to connect with. - Removed enumerations
CountryCode
andCurrencyCode
, as well as all corresponding methods and functionality. Please use strings instead. - The Integration test project has been removed. To perform quick (integration) testing, please use one of the example applications.
- Removed enumerations
The Android Example app project that used to be included in this repository, has been moved to a separate repository. A more modern, Kotlin based, example was added as well.
5.8.4
The following resources have been added or changed in the example application:
- Added:
- Added logos and translations for Presto (6008), CMR Falabella (6009), Mach (6010), Cencosud (6011), Cordobesa (6012), Cordial (6013), Carnet (6014), Cartao MercadoLivre (6015), Banco de Occidente (6112), BCP (6113), BBVA (6114), ScotiaBank (6115), Santander (6116), Santander Cash (6206), Interbank (6207), Sezzle (8004), Clearpay (8013) and Afterpay (8014).
- Added some Pix (6105) specific translations.
- Added translations for the
partialPin
tooltip text.
- Changed:
- Updated the name translations for Bank Islam Online (887), AmBank (889), Krungsri Bank (896), Dragonpay Banking (897), Razer Cash (1522), Dragonpay Cash (1524) and Razer Cash @ 7-Eleven (1526)
- Updated the logos for Maybank2u (885), CIMB Clicks (886), Hong Leong Connect (890), Affin Bank (892), Bangkok Bank (893), Krung Thai Bank (894), Krungsri Bank (896), Dragonpay Banking (897), Razer Cash (1522), Dragonpay Cash (1524), Razer Cash @ 7-Eleven (1526), RuPay credit (4001), RuPay debit (4002) and UPI (4101)