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.propertyNameandrequestIdoptional 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()inValidationRuleLengthhas been deprecated, because it is not returned from the API.getAcquirerCountry()inBasicPaymentProductGrouphas been deprecated, because it is not returned from the API.
Removed:
- The classes
CustomerDetailsAsyncTask,CustomerDetailsRequest,CustomerDetailsResponseandGetCustomerDetailshave been removed, as well as thegetCustomerDetailsmethod 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
Constantsfields related to Arvato / AfterPay:PAYMENTPRODUCTID_AFTERPAY_INSTALLMENTSPAYMENTPRODUCTID_AFTERPAY_INVOICEINSTALLMENTPLAN_FIELD_IDTERMSANDCONDITIONS_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
supportsMandatesto classBasicPaymentProduct. - Property
authenticationIndicatorto classBasicPaymentProduct. - Property
deviceFingerprintEnabledto classBasicPaymentProduct. - Property
fieldsWarningto 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
GetIINDetailsrequest. Instead of an exception, a success response with statusNOT_ENOUGH_DIGITSwill 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 ofClientApican be obtained to make requests to the Connect REST API. Calling any other method onConnectSDKbeforeinitializewas called will result in aConnectSDKNotInitializedException. TheencryptPaymentRequestmethod 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 theSessionclass. - Added methods
getImageDrawableandgetImageUrlto classTooltip.
- Added a new entry point for the SDK:
- Changed:
IllegalArgumentExceptionis thrown instead ofjava.security.InvalidParameterExceptionif invalid arguments are passed to methods.
- Deprecated:
- Deprecated classes
Session,C2SCommunicatorandC2SCommunicatorConfigurationin favour of the new SDK entrypointConnectSDKand 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,PaymentProductGroupAsyncTaskandPublicKeyAsyncTaskandThirdPartyStatusAsyncTask. They will be removed in a future major release. - Deprecated exceptions
BadPaymentItemException,CommunicationExceptionandUnknownNetworkExceptionin favour ofUnknownNetworkResponseException. - Deprecated all classes that are used for encryption:
SessionEncryptionHelper,EncryptData,EncryptorandEncryptUtil. 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,ReadInternalStorageandWriteInternalStorage. 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
getImageof classTooltip. UsegetImageDrawableinstead.
- Deprecated classes
- Removed:
- Removed enumerations
RegionandEnvironment, 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
CountryCodeandCurrencyCode, 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
partialPintooltip 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)