谷歌AdMob广告接入——最白话,手把手教你做系列。

来源:互联网 发布:隆多臂展体测数据 编辑:程序博客网 时间:2024/06/06 13:57

仍然直奔主题,接入谷歌AdMob广告。申请广告ID这里不做赘述,需求的话我会在新的一篇详细介绍。
需求2个要素。
一,接入SDK
SDK有两种。
今天做第一种Unity-Admob。
下载完插件,把插件里包含的admob_unity_plugin.unitypackage的文件导入你的项目。
第一步完成
导入项目后你的project里面会出现以下文件。
这里写图片描述
二,代码。
我们的project里包含了一个adomobdemo的文件。我们可以直接修改然后挂到自己的场景中去就可以了。
那么怎么修改呢

using UnityEngine;using System.Collections;using admob;    //这里把类名也做了修改public class addadmobdemo : MonoBehaviour {    //谷歌广告 插屏,视频广告修改版    void Start()    {        Debug.Log("start unity demo-------------");        //初始化Admob        initAdmob();    }    void Update()    {        if (Input.GetKeyUp(KeyCode.Escape))        {            Debug.Log(KeyCode.Escape + "-----------------");        }    }    //具体初始化逻辑 ca-app-pub-xxxx为各种类型广告ID(字符串格式)    void initAdmob()    {   //添加Banner事件,以下事件根据自己需求添加即可        ad.bannerEventHandler += onBannerEvent;        //添加插屏广告事件        ad.interstitialEventHandler += onInterstitialEvent;        //添加视频广告事件        ad.rewardedVideoEventHandler += onRewardedVideoEvent;        //添加Banner广告ID(左),插屏广告(右)          Admob.Instance().initAdmob("ca-app-pub-3940256099942544/2934735716", "ca-app-pub-7816725853485153/4608868394");                                                                                            //ad.setTesting(true);//show test ad        Admob.Instance().setGender(AdmobGender.MALE);        string[] keywords = { "game", "crash", "male game" };        //  ad.setKeywords(keywords);//set keywords for ad        Debug.Log("admob inited -------------");    }    //Banner广告事件处理逻辑    void onBannerEvent(string eventName, string msg)    {        Debug.Log("handler onAdmobBannerEvent---" + eventName + "   " + msg);    }    //插屏广告事件处理逻辑    void onInterstitialEvent(string eventName, string msg)    {        Debug.Log("handler onAdmobEvent---" + eventName + "   " + msg);    }    //视频广告事件处理逻辑,以视频逻辑为例,简单的事件处理    void onRewardedVideoEvent(string eventName, string msg)    {        //加载失败重新加载        if (eventName == AdmobEvent.onAdFailedToLoad)        {            Admob.Instance().loadRewardedVideo("ca-app-pub-7816725853485153/8074482445");        }        //视频关闭重新加载        if (eventName == AdmobEvent.onAdClosed)        {            Admob.Instance().loadRewardedVideo("ca-app-pub-7816725853485153/8074482445");        }        //视频奖励逻辑        if (eventName == AdmobEvent.onRewarded)        {           //激励视频奖励逻辑可在此处添加        }        Debug.Log("handler onRewardedVideoEvent---" + eventName + "  rewarded: " + msg);    }    public void ShowInter()//插屏广告调用方法(如果已请求到广告,调用即显示广告,否则回重新请求,在下一次调用是继续此逻辑)    {        if (Admob.Instance().isInterstitialReady())        {            Admob.Instance().showInterstitial();        }        else        {            Admob.Instance().loadInterstitial();        }    }    public void ShowAedioAds()//视频广告调用方法    {        if (Admob.Instance().isRewardedVideoReady())        {            Admob.Instance().showRewardedVideo();        }    }    public void ShowBannerAds()//Banner广告调用方法    {        Admob.Instance().showBannerRelative(AdSize.SmartBanner, AdPosition.BOTTOM_CENTER, 0);    }}

以上代码是我做出的修改,新手的话可直接覆用,只需要将对应的广告ID修改成自己的即可。一般挂在项目中不销毁的对象上即可。
下篇会简单介绍另外一种官方的SDK接入谷歌广告的方法。

阅读全文
1 0
原创粉丝点击