💡Tips
- To optimize loading efficiency, implement Preset Strategy
- Configure ad load timeout (recommended 6000ms - 10000ms) based on business requirements
- Timeout duration applies only to ad loading phase, not including display time
- ⚠️ Excessively short timeouts may degrade ad performance
- ⚠️ When Price Priority Mode is enabled in HyperBid Tools Dashboard > Application > Edit Mediation Unit > Advanced Settings, its callback timeout overrides
fetchTimeout
/**
* @param fetchTimeout Loading timeout in milliseconds
*/
MCAppOpenAd mSplashAd = new MCAppOpenAd(activity, "your mediation unit id", fetchTimeout);
mSplashAd.setListener(new MCAppOpenAdListener() {
@Override
public void onAdLoaded(MCAdInfo mcAdInfo) {
// Ad load success callback
}
@Override
public void onAdLoadTimeout() {
// Loading timeout callback
}
@Override
public void onAdDisplayed(MCAdInfo mcAdInfo) {
// Ad display success callback
}
@Override
public void onAdHidden(MCAdInfo mcAdInfo) {
// Ad closed callback (recommend removing view here)
if (mSplashAdContainer != null) {
mSplashAdContainer.removeAllViews();
}
// soft launch pre-load
// mSplashAd.loadAd();
}
@Override
public void onAdClicked(MCAdInfo mcAdInfo) {
// Ad click callback
}
@Override
public void onAdLoadFailed(MCError mcError) {
// Ad load failure callback
}
@Override
public void onAdDisplayFailed(MCAdInfo mcAdInfo, MCError mcError) {
// Ad display failure callback
// soft launch pre-load
// mSplashAd.loadAd();
}
});
mSplashAd.setRevenueListener(new MCAdRevenueListener() {
@Override
public void onAdRevenuePaid(MCAdInfo adInfo) {
// Revenue tracking callback
}
});
mSplashAd.loadAd();
if (mSplashAd.isReady()) {
// mSplashAdContainer: Parent container for ad display
mSplashAd.showAd(activity, mSplashAdContainer, null);
} else {
mSplashAd.loadAd();
}
if (mSplashAd != null) {
mSplashAd.destroy();
}
MCAppOpenAd mSplashAd = new MCAppOpenAd(activity, "your mediation unit id");
mSplashAd.setListener(new MCAdListener() {
...
@Override
public void onAdLoaded(MCAdInfo mcAdInfo) {
// Retrieve custom parameters
mcAdInfo.getOriginJsonString();
}
...
});
Map<String, Object> loadExtraParameter = new HashMap<>();
loadExtraParameter.put("test_load_extra_key", "test_load_extra_value");
mSplashAd.setLoadExtraParameter(loadExtraParameter);
Map<String, String> extraParameter = new HashMap<>();
extraParameter.put("test_extra_key", "test_extra_value");
mSplashAd.setExtraParameter(extraParameter);
mSplashAd.loadAd();