cocos2d-x在android下添加多盟插屏广告
来源:互联网 发布:mac如何给iphone刷机 编辑:程序博客网 时间:2024/05/01 04:52
cocos2d-x在android下添加多盟插屏广告
分类: cocos2d-x2013-08-13 19:26479人阅读评论(0)收藏举报
多线程UICocos2d-x广告
好吧,经过仔细研究,我发现其实在cocos2d-x的应用下添加的插屏广告,当用Jin调用代码时是在子线程中对UI进行操作,所以显然是不可能控制得了广告UI的,所以上一篇说的“无法添加”就当是屁话好了……反正我确实是只菜鸟……接下来把添加过程写出来,好让后继的菜鸟们能不费力的添加这类广告,甚至以自定义的方式来展示广告……
上面说过了用JIN调用插屏时是在子线程中操作UI,主线程UI不是安全线程,所以需要使用Handle来与主线程进行通信,让其在适时的时候按我们设定的方式去调用广告UI,下面是代码:
- public class GameActivity extends Cocos2dxActivity {
- private static InterstitialAd interstitialAd;
- public static final String PUBLISHER_ID = "56OJzCCIuNT9GZxMAZ";
- public static final String InlinePPID ="16TLmbLoAp3B1NUGss77M4ai";
- public static final String InterstitialPPID = "16TLmbLoAp3B1NUGs4bP4d9i";
- static DomobInterstitialAd mInterstitialAd;
- private static Handler mHandler;
- protected void onCreate(Bundle savedInstanceState){
- super.onCreate(savedInstanceState);
- mHandler = new Handler();
- mInterstitialAd =new DomobInterstitialAd(this, PUBLISHER_ID,
- InterstitialPPID, DomobInterstitialAd.INTERSITIAL_SIZE_300X250);
- mInterstitialAd.setInterstitialAdListener(new DomobInterstitialAdListener() {
- @Override
- public void onInterstitialAdReady() {
- Log.i("DomobSDKDemo", "onAdReady");
- }
- @Override
- public void onLandingPageOpen() {
- Log.i("DomobSDKDemo", "onLandingPageOpen");
- }
- @Override
- public void onLandingPageClose() {
- Log.i("DomobSDKDemo", "onLandingPageClose");
- }
- @Override
- public void onInterstitialAdPresent() {
- Log.i("DomobSDKDemo", "onInterstitialAdPresent");
- }
- @Override
- public void onInterstitialAdDismiss() {
- // Request new ad when the previous interstitial ad was closed.
- mInterstitialAd.loadInterstitialAd();
- Log.i("DomobSDKDemo", "onInterstitialAdDismiss");
- }
- @Override
- public void onInterstitialAdLeaveApplication() {
- Log.i("DomobSDKDemo", "onInterstitialAdLeaveApplication");
- }
- @Override
- public void onInterstitialAdClicked(DomobInterstitialAd arg0) {
- Log.i("DomobSDKDemo", "onInterstitialAdClicked");
- }
- @Override
- public void onInterstitialAdFailed(
- cn.domob.android.ads.DomobAdManager.ErrorCode arg0) {
- // TODO Auto-generated method stub
- Log.i("DomobSDKDemo", "onInterstitialAdFailed");
- }
- });
- mInterstitialAd.loadInterstitialAd();
- }
上面都是官方示例中的代码,下面是线程代码,:
- private static Runnable showMyADi =new Runnable() {
- public void run() {
- if (mInterstitialAd.isInterstitialAdReady()){
- mInterstitialAd.showInterstitialAd(GameActivity.getContext());
- } else {
- Log.i("DomobSDKDemo", "Interstitial Ad is not ready");
- mInterstitialAd.loadInterstitialAd();
- }
- }
- };
最后是通过JIN来执行上面的代码:
- public static void showMyAD(){
- mHandler.post(showMyADi);
- }
调用后广告显示正常,点击正常……调试代码一片绿、蓝色……我想如果加聚合也这样调用的话应该差不多了……
0 0
- cocos2d-x在android下添加多盟插屏广告
- cocos2d-x在android下添加多盟插屏广告
- cocos2d-x在android下添加插屏广告
- cocos2d-x在android下添加插屏广告
- cocos2d-x在android下添加插屏广告 (转)
- cocos2d-x在android下添加插屏广告 .
- cocos2d-x在android下添加插屏广告
- cocos2d-x 3.X 在android 中添加多盟插屏广告
- cocos2d-x 3.0 final 在android 中添加多盟插屏广告
- Cocos2d-x开发的Android应用怎么添加插屏广告
- Cocos2d-x 3.X, IOS版添加广点通插屏广告
- 在cocos2d-x中如何嵌入百度的插屏广告
- cocos2d-x 3.X 如何在android里添加广告
- cocos2d-x 植入广告(一) 百度横屏、插屏广告
- cocos2dx + android 如何添加百度插屏广告
- cocos2dx + android 如何添加百度插屏广告
- cocos2dx + android 如何添加百度插屏广告
- cocos2d-x 3.0 final 如何在android里添加广告
- struts2字段校验器与非字段校验器
- C#操作XML
- 哲学家进餐问题:
- 操作系统中的进程通信
- 线程小讲
- cocos2d-x在android下添加多盟插屏广告
- 计算机的调度
- 调度算法:
- Struts 2配置MySQL
- easyPHP配置
- cclimits头文件
- 常用邮箱的pop3,smtp以及imap服务器地址
- struts中datetimepicker使用问题 datetimepicker debug 以及 解决方法
- struts 2 tee和treenode标签