Nuclei Banners
Nuclei Banners
Introduction:
- Banners are used to advertise Nuclei offers, other nuclei features or bank's offers if any.
- Banners are implemented for almost every Nuclei category.
- Nuclei uses Google's Ads Manager Service to enable banners for a nuclei category.
- Partner can also enable banners in Nuclei screen by sharing necessary requirements along with the deep-link/url that needs to be executed on banner's clicked.
- In Nuclei Sdk we are using following dependencies for banners & version as mentioned:
dependencies {
implementation 'com.google.android.gms:play-services-ads-lite:22.0.0'
implementation 'com.google.android.gms:play-services-ads:22.0.0'
}
-
Note: There are issues encountered in the banks who are using the above dependencies in their applications and due to which the banners doesn't load even its delivered for that bank. Reason for this issue is the versioning of the library at Nuclei SDK and partner application and so many breaking changes releases done by Google in this library. (Refer Release Note)
Resolutions And Strategies regarding banners for BANK:
- If the bank is NOT using the above mentioned dependencies in the partner application, then no issue with banners.
- If the bank is using the above libraries and is at the same version as that of Nuclei's then no banner issue will get encountered.
- If the bank is using the above mentioned library with version less than that of Nuclei's ads library version then;
- Bank has to upgrade the library to the a Minimum library version (must be >=
20.0.0
) to make it compatible with the Nuclei's ads library version. - While upgrading the ads library version, bank can get issues as ClassNotFoundException or NullPointerException errors; they have to migrate their code-base to support the Minimum compatible ads library version.
- Also, after successful migration of the library, bank use the Gradle's resolutionStrategies implementation so that Nuclei's ads library and Partner's ads library both point to the same version. It can be done by implementing the following code:
configurations.all {
resolutionStrategy {
force "com.google.android.gms:play-services-ads-lite:${VERSION}"
force "com.google.android.gms:play-services-ads:${VERSION}"
}
} - Bank has to upgrade the library to the a Minimum library version (must be >=
- If the bank is using the above mentioned library with version greater than that of Nuclei's ads library version then;
- Nuclei team needs to do a sanity with bank app if the ads are getting fetched and getting displayed on the screen;
- If the banners are not visible, the Nuclei team will debug, find the RCA and provide a resolution