您的位置:首页 > 其它

Admob插页广告的添加

2014-12-20 20:23 162 查看
在cocos2dx中加入Admob插页广告,不能用JNI直接调用

if (interstitial.isLoaded())
{
interstitial.show();

}


显示插页广告的函数必须在mainUIThread中调用。

否则会报错:

IllegalStateException: XXXX must be called on the main UI thread.


 

所以要通过android handler传递消息来调用广告:

private static Handler handler;
private final static int HANDLER_GOTO_ADMOB = 1;
______________________________________________
handler = new Handler() {

public void handleMessage(Message msg) {
switch (msg.what) {

case HANDLER_GOTO_ADMOB:

//    显示广告
if (interstitial.isLoaded()) {
interstitial.show();

}
else
{
AdRequest adRequest = new AdRequest.Builder().build();
interstitial.loadAd(adRequest);
}
break;

case HANDLER_GOTO_OTHER:

//    隐藏广告

break;

}

}
};

________________________________________________
public static void displayInterstitial() {

Message msg = new Message();
msg.what = HANDLER_GOTO_ADMOB;
handler.sendMessage(msg);

}


参考:

利用jni及handler代理在cocos2d-x游戏指定页面添加admob广告
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: