getLoadAdtype method

Future<int> getLoadAdtype(
  1. int adtype,
  2. int loadType,
  3. double probability
)

计算将要加载哪个SDK广告

adtype 广告类型AdType

loadType 广告选取方式UniversalLoadType

probability 当选取方式为LoadType.RANDOWM 随即时 穿山甲广告出现的比例 「0-1取值,0为不出现 1必出现」

Implementation

Future<int> getLoadAdtype(
    int adtype, int loadType, double probability) async {
  var sdkType = UniversalSdkKType.PANGOLIN;
  //随即加载
  if (loadType == UniversalLoadType.RANDOWM) {
    sdkType = await _getRandomLoadType(probability);
    //依次加载
  } else if (loadType == UniversalLoadType.INTURN) {
    //目前ios暂不支持优量汇
    if (Platform.isIOS) {
      sdkType = UniversalSdkKType.PANGOLIN;
    } else {
      //激励广告
      if (adtype == UniversalAdType.REWARD) {
        if (rewardLoadBean.lastSdk == UniversalSdkKType.PANGOLIN) {
          sdkType = UniversalSdkKType.TENCENT;
        } else {
          sdkType = UniversalSdkKType.PANGOLIN;
        }
        //插屏广告
      } else if (adtype == UniversalAdType.INTERSTITIAL) {
        if (interstitialLoadBean.lastSdk == UniversalSdkKType.PANGOLIN) {
          sdkType = UniversalSdkKType.TENCENT;
        } else {
          sdkType = UniversalSdkKType.PANGOLIN;
        }
        //banner广告
      } else if (adtype == UniversalAdType.BANNER) {
        if (bannerLoadBean.lastSdk == UniversalSdkKType.PANGOLIN) {
          sdkType = UniversalSdkKType.TENCENT;
        } else {
          sdkType = UniversalSdkKType.PANGOLIN;
        }
        //信息流广告
      } else if (adtype == UniversalAdType.NATIVE) {
        if (nativeLoadBean.lastSdk == UniversalSdkKType.PANGOLIN) {
          sdkType = UniversalSdkKType.TENCENT;
        } else {
          sdkType = UniversalSdkKType.PANGOLIN;
        }
        //开屏广告
      } else if (adtype == UniversalAdType.SPLAH) {
        if (splashLoadBean.lastSdk == UniversalSdkKType.PANGOLIN) {
          sdkType = UniversalSdkKType.TENCENT;
        } else {
          sdkType = UniversalSdkKType.PANGOLIN;
        }
      }
    }
  }
  return sdkType;
}