app、小程序如何接入第三方广告(广告商渠道)

可供选择的第三方广告商

  • 腾讯优量汇
  • 字节跳动穿山甲
  • 快手广告(无上架要求,但需提供软著)
  • 360广告联盟
  • Sigmob广告
  • uni-ad广告联盟

如果选择开通安卓平台,除了快手、Sigmob广告,其他广告平台均要求在主流的应用商店上线。大部分应用商店会要求著作权证书。以下应用市场暂无软著要求:
酷安市场:没有著作权要求,审核较慢。(只能用于渠道SDK广告中优量汇审核)
Google Play:不要求著作权,开发者账号收费25美元 (2020年7月2日以后穿山甲平台已不再支持该应用市场。只能用于渠道SDK广告优量汇审核。如果是强依赖聚合激励视频的网赚类应用,离不开穿山甲,所以不适合这种方式)。
豌豆荚(阿里应用分发平台):不要求著作权,但应用不涉及金融、贷款、医疗等特殊行业内容,可以暂时使用开发者声明代替。
安智:不需要著作权,但打包了推广的上架服务,费用为5000元(某些特定行业分类无法上架,需沟通)。
vivo 应用商店:需根据app类型来确定审核所需要的资质。不在表内的app可尝试无著作权提交。

 

1、开通广告

  • 操作平台后台:首先需要在广告平台的后台进行开通操作。对于App平台、H5平台及微信小程序平台,需要在这些平台的管理后台进行相应的操作。
  • 其他小程序平台:在其他小程序平台上,例如支付宝小程序、百度小程序等,则需要在各自的小程序管理后台操作。

2、编写代码

  • 广告编写示例:在页面的合适位置编写代码,放置广告组件,并配上广告位id

<template>
  <view class="content">
    <view class="ad-view">
      <ad adpid="1111111111" @load="onload" @close="onclose" @error="onerror"></ad>
    </view>
  </view>
</template>
  • 错误处理示例:在脚本部分添加事件处理函数,例如onloadoncloseonerror,以便处理广告的加载、关闭和错误事件

onload(e) {
  console.log("onload");
},
onclose(e) {
  console.log("onclose: " + e.detail);
},
onerror(e) {
  console.log("onerror: " + e.detail.errCode + " message:: " + e.detail.errMsg);
}

 3、封装广告功能

  • 创建Utils.js文件:为了减少重复代码,可以将插屏广告和激励广告的功能封装到一个独立的JS文件中,例如命名为Utils.js。在该文件中定义两个对象interstitialrewarded,分别用于处理插屏广告和激励广告的逻辑
  • 插屏广告封装:
var interstitialAd = null;
let interstitial = {
  load(id) {
    if (uni.createInterstitialAd) {
      interstitialAd = uni.createInterstitialAd({
        adUnitId: id
      });
      interstitialAd.onLoad(() => {
        console.log('插屏广告加载中');
      });
      interstitialAd.onError((err) => {
        console.log('加载错误', err);
      });
      interstitialAd.onClose((res) => {
        console.log('插屏广告关闭', res);
      });
    }
  },
  show() {
    if (interstitialAd) {
      interstitialAd.show().catch((err) => {
        console.error(err);
      });
    }
  }
};
  • 激励广告封装:
var videoAd = null;
let rewarded = {
  load(id, e) {
    if (uni.createRewardedVideoAd) {
      videoAd = uni.createRewardedVideoAd({
        adUnitId: id
      });
      videoAd.onError(err => {});
      videoAd.onClose((status) => {
        if (status && status.isEnded || status === undefined) {
          e();
        } else {}
      });
    }
  },
  show() {
    if (videoAd) {
      videoAd.show().catch(() => {
        // 失败重试
        videoAd.load()
          .then(() => videoAd.show())
          .catch(err => {
            console.log('激励视频 广告显示失败');
          });
      });
    }
  }
};
  • 导出封装对象:将封装好的对象导出,以供其他页面调用:
module.exports = {
  interstitial,
  rewarded
};

4、导入并使用封装的广告功能

  • 导入Utils.js:在需要调用广告的页面导入之前封装好的Utils.js文件,注意文件的相对路径不要写错
import Utils from '../../utils/Utils.js';
  • 加载并展示广告:在页面的生命周期函数或适当的时机调用封装好的广告方法。例如在onLoad方法中加载插屏广告和激励广告,并在需要显示的时候调用show方法 
onLoad() {
  // 加载插屏广告
  Utils.interstitial.load('你的广告id');
  // 加载激励广告
  Utils.rewarded.load('adunit-85e98527c651f48f', () => {
    // 这里写你的任意奖励事件
  });
},
someFunctionToShowAds() {
  // 展示插屏广告
  Utils.interstitial.show();
  // 展示激励广告
  Utils.rewarded.show();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值