android 腾讯广告接入,cocos2dx 3.x android studio 添加广点通广告

1,接入广告条

按照官方文档接入的时候遇到个问题,官方文档中是使用的布局文件来显示广告条,但是cocos2dx 没有使用布局文件,所以这里需要我们在代码中手动创建一个布局容器来显示广告条,代码如下:

// 声明一个容器

private static RelativeLayout bannerContainer;

//创建广告条容器

public static void createBanner()

{

//创建广告条容器

bannerContainer = new RelativeLayout(mActivity);

RelativeLayout.LayoutParams parentLayoutParams = new RelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

mActivity.addContentView(bannerContainer, parentLayoutParams);

// 创建Banner广告AdView对象

// appId : 在 http://e.qq.com/dev/ 能看到的app唯一字符串

// posId : 在 http://e.qq.com/dev/ 生成的数字串,并非 appid 或者 appkey

mBannerView = new BannerView(mActivity,

ADSize.BANNER,

mActivity.getResources().getString(R.string.gdt_appid),

mActivity.getResources().getString(R.string.gdt_banner_postid));

//设置广告轮播时间,为0或30~120之间的数字,单位为s,0标识不自动轮播

mBannerView.setRefresh(30);

mBannerView.setADListener(new AbstractBannerADListener()

{

@Override

public void onNoAD(AdError adError)

{

Log.i("GDT_AD", "BannerNoAD,eCode=" + adError.getErrorCode());

}

@Override

public void onADReceiv()

{

Log.i("GDT_AD", "ONBannerReceive");

}

});

bannerContainer.addView(mBannerView);

mBannerView.loadAD();

}

然后在这个bannerContainer里面addview广告条view。

显示的时候直接创建,不显示的时候就销毁

mBannerView.destroy();

2.接入插屏广告

这里需要注意的是创建插屏广告view之后需要load一次广告

public static void createInterstitialAD()

{

mInterstitialAD = new InterstitialAD(mActivity,

mActivity.getResources().getString(R.string.gdt_appid),

mActivity.getResources().getString(R.string.gdt_interteristal_postid));

mInterstitialAD.setADListener(new AbstractInterstitialADListener()

{

@Override

public void onADReceive()

{

Log.i("GDT_AD", "LoadInterstitialAd SUCCESS");

}

@Override

public void onNoAD(AdError adError)

{

Log.i("GDT_AD", String.format("LoadInterstitialAd Fail, error code: %d, error msg: %s", adError.getErrorCode(), adError.getErrorMsg()));

}

});

//初始化必须加载一次广告

mInterstitialAD.loadAD();

}

请注意:从cocos2dx通过jnihelper调用到java函数的时候一定要在ui线程中显示广告条或者插屏广告,不然程序可能会崩掉

public static void showBanner()

{

Log.i("GDT_AD","show banner");

//在UI线程中显示广告条

mActivity.runOnUiThread(new Runnable()

{

@Override

public void run()

{

createBanner();

}

});

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值