Skip to main content

自动加载功能

一、自动加载功能介绍#

根据上图所示: 应用创建广告位对象时,传入true开启自动加载模式。如果开启,将会在以上时机(红色线),自动加载广告。

  • 创建广告位对象后
  • 调用IsReady()为否时
  • 调用show()方法时isReady()为否时
  • 关闭广告后
  • load()失败,缓存池中无可用广告时

二、自动加载推荐使用方案#

自动加载功能是TradPlus独有的针对部分需要频繁展示广告的场景做的自动补充和过期重新加载的功能,推荐在广告场景触发较多的场景下使用。

1、适用的广告类型 :插屏广告、激励视频广告、原生广告#

2、适用的广告场景#

  • 自动加载功能是在各种时机来自动触发加载新的广告,确保在广告展示的时候已经有可用的,从而提升广告展示数。
  • 对于广告曝光频繁的位置,推荐开启自动加载,而广告场景很隐蔽,用户触达率较低的场景,不建议开启自动加载,会导致广告浪费,展示率下降。

3、接入建议#

  • 如果需要开启自动加载

    • 建议在打开app(或者广告场景的前置页面)后,尽早的创建广告位对象,设置自动加载。

    • 后续在进入广告场景后,调用entryAdScenario()方法记录进入广告场景的埋点信息,在广告场景中如果需要展示广告,可以直接调用创建好的广告位对象的isReady()isReady()true表示已经有可用的广告,直接show()展示。

    • isReady()false表示没有可用的广告。当前机会不展示广告(sdk内部会自动加载一次广告,不需要额外调用load方法),同时sdk内部会记录这次埋点,上线后可以在TradPlus后台查看没广告的占比。

  • 如果不开启自动加载

    • 那么建议在可能要展示广告的页面前调用loadAd(),确保展示时有可用的广告,同时在广告展示完成,广告展示时无可用广告等场景下再次调用loadAd()
    • 如果广告onAdAllLoaded回调是失败的情况,可以延迟一段时间后再load(一定不要过频繁,间隔时间可以15,30,60s翻倍)。

三、关闭自动加载#

Android原生#

  • 创建广告位对象前调用
Map<String, Object> settingParam = new HashMap<>();
String[] unitIds = {"广告位1","广告位2"};
settingParam.put("autoload_close",unitIds);
TradPlusSdk.setSettingDataParam(settingParam);

iOS原生#

  • 创建广告位对象前调用
[TradPlus sharedInstance].settingDataParam = @{@"autoload_close":@[@"广告位1"@"广告位2"]};

Unity平台#

  • 请求广告前调用
Dictionary<string, object> settingMap = new Dictionary<string, object>();
string[] unitIds = {"广告位1","广告位2"};
settingMap.Add("autoload_close", unitIds);
TradplusAds.Instance().SetSettingDataParam(settingMap);

Flutter平台#

  • 请求广告前调用
Map settingMap = {"autoload_close": "广告位1","autoload_close":"广告位2"};
TPSDKManager.setSettingDataParam(settingMap);