The below information is a guide for modifications when changing the version from 7.x.x -> 8.0.0.
Breaking Changes
1. Renamed the artifact
The ARTIFACT Name
with the prefix nam-
will be changed as follows.
AS IS | TO BE |
---|---|
com.naver.gfpsdk:nam-nda | com.naver.gfpsdk.mediation:nam-nda |
com.naver.gfpsdk:nam-ndavideo | com.naver.gfpsdk.mediation:nam-ndavideo |
com.naver.gfpsdk:nam-applovin | com.naver.gfpsdk.mediation:nam-applovin |
com.naver.gfpsdk:nam-aps | com.naver.gfpsdk.mediation:nam-aps |
com.naver.gfpsdk:nam-dfp | com.naver.gfpsdk.mediation:nam-dfp |
com.naver.gfpsdk:nam-dt | com.naver.gfpsdk.mediation:nam-dt |
com.naver.gfpsdk:nam-fan | com.naver.gfpsdk.mediation:nam-fan |
com.naver.gfpsdk:nam-ima | com.naver.gfpsdk.mediation:nam-ima |
com.naver.gfpsdk:nam-inmobi | com.naver.gfpsdk.mediation:nam-inmobi |
com.naver.gfpsdk:nam-ironsource | com.naver.gfpsdk.mediation:nam-ironsource |
com.naver.gfpsdk:nam-lan | com.naver.gfpsdk.mediation:nam-lan |
com.naver.gfpsdk:nam-unity | com.naver.gfpsdk.mediation:nam-unity |
com.naver.gfpsdk:nam-vungle | com.naver.gfpsdk.mediation:nam-vungle |
Changed the version of a module for third party mediation
From the 8.0.0 version, versions of Third party media modules such as DFP, FAN, and APPLOVIN are distributed as independent versions different from those of the NAM SDK.
S2S media modules such as nda
, and ndavido
are always managed in the same version as nam-core
.
For example with DFP modules from earlier than 8.0.0 versions, the version of the DFP module was distributed in the same way as the version of the NAM SDK and is dependent on the module.
Because the DFP SDK version was fixed, it was not possible to use the non-fixed DFP SDK version as a module of a specific NAM SDK version.
However, since 8.0.0 and later versions, the NAM SDK and Third party mediation modules are independently distributed.
Therefore the Third party mediation modules can be optionally used when applying the NAM SDK module.
The version name of the Third party mediation module is determined to include the patch version in addition to the version name of the Third party SDK.
For example, the version of a DFP module with DFP SDK 23.3.0 version is distributed from 23.3.0.0 and each time it changes, as shown in the example below, the number corresponding to the fourth part increases by one.
Artifact NAME | Third party SDK Version Name | Expected Mediation Module Version Names |
---|---|---|
com.naver.gfpsdk.mediation:nam-dfp | 23.3.0 | 23.3.0.0, 23.3.0.1, 23.3.0.2, ... |
com.naver.gfpsdk.mediation:nam-dfp | 23.4.0 | 23.4.0.0, 23.4.0.1, 23.4.0.2, ... |
Each third-party media module is built and deployed with a specific dependency com.naver.gfpsdk:nam-core
, and if the com.naver.gfpsdk:nam-core
changes are set to each third-party media module, it can be found in the CHANGELOG.md
file or form file.
2. Changed the package 'com.naver.gfpsdk.provider'
As the com.naver.gfpsdk.provider
package is changed to the com.naver.gfpsdk.mediation
package, all existing classes in the com.naver.gfpsdk.provider
package are moved to com.naver.gfpsdk.mediation
.
3. Changed the package of class - SdkPropertiesBuilder, UserPropertiesBuilder
Packages of the SdkPropertiesBuilder
and UserPropertiesBuilder
classes are moved from com.naver.gfpsdk
to com.gfpsdk.properties
.
AS IS | TO BE |
---|---|
com.naver.gfpsdk.SdkPropertiesBuilder | com.naver.gfpsdk.properties.SdkPropertiesBuilder |
com.naver.gfpsdk.UserPropertiesBuilder | com.naver.gfpsdk.properties.UserPropertiesBuilder |
Guide for Reusing Ad Objects (Version 8.3.0 and Above)
Starting from version 8.3.0, there are changes in the internal behavior related to reusing ad objects for loading. This guide helps you understand and correctly apply these changes.
Key Changes
1. Reusing GfpBannerAdView
- Previous Version: You could reuse a GfpBannerAdView by either calling destroy() followed by loadAd() or just calling loadAd().
- Version 8.3.0 and Above: You only need to call loadAd().
- Kotlin
- Java
// Previous Version
bannerAdView.destroy()
bannerAdView.loadAd()
// Version 8.3.0 and Above
bannerAdView.loadAd()
// Previous Version
bannerAdView.destroy();
bannerAdView.loadAd();
// Version 8.3.0 and Above
bannerAdView.loadAd();
2. Reusing GfpAdLoader
- Previous Version: You could reuse a GfpAdLoader by either calling cancel() followed by loadAd() or just calling loadAd().
- Version 8.3.0 and Above: You only need to call loadAd().
- Kotlin
- Java
// Previous Version
adLoader.cancel()
adLoader.loadAd()
// Version 8.3.0 and Above
adLoader.loadAd()
// Previous Version
adLoader.cancel();
adLoader.loadAd();
// Version 8.3.0 and Above
adLoader.loadAd();
3. Reusing GfpRewardedAdManager
- Previous Version: You could reuse a GfpRewardedAdManager by either calling destroy() followed by loadAd() or just calling loadAd().
- Version 8.3.0 and Above: You only need to call loadAd().
- Kotlin
- Java
// Previous Version
rewardedAdManager.destroy()
rewardedAdManager.loadAd()
// Version 8.3.0 and Above
rewardedAdManager.loadAd()
// Previous Version
rewardedAdManager.destroy();
rewardedAdManager.loadAd();
// Version 8.3.0 and Above
rewardedAdManager.loadAd();
4. Reusing GfpInterstitialAdManager
- Previous Version: You could reuse a GfpInterstitialAdManager by either calling destroy() followed by loadAd() or just calling loadAd().
- Version 8.3.0 and Above: You only need to call loadAd().
- Kotlin
- Java
// Previous Version
interstitialAdManager.cancel()
interstitialAdManager.loadAd()
// Version 8.3.0 and Above
interstitialAdManager.loadAd()
// Previous Version
interstitialAdManager.cancel();
interstitialAdManager.loadAd();
// Version 8.3.0 and Above
interstitialAdManager.loadAd();
Important Notes
- When reusing an existing object, only call
loadAd()
to load the ad.