【发布时间】:2015-02-05 15:31:37
【问题描述】:
我正在使用 cocos2d-x 3.2,我想在用户触摸屏幕时显示插页式广告。 但是当我触摸屏幕时,我收到了“不幸停止”的消息。 这是我的代码:
Java:
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
final String ADMOB_ID = "ca-app-pub-0000000000000000/0000000000";
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId(ADMOB_ID);
AdRequest.Builder builder = new AdRequest.Builder();
AdRequest adRequest = new AdRequest.Builder().addTestDevice("3A34952B128D8DC19CCB75CA752ED31B").build();
interstitial.loadAd(adRequest);
}
public void showad() {
interstitial.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
interstitial.show();
}
});
}
;
C++:
bool HelloWorld::onTouchBegan(cocos2d::Touch *touch , cocos2d::Event *event){
show();
}
void HelloWorld::show(){
cocos2d::JniMethodInfo methodInfo;
if (! cocos2d::JniHelper::getMethodInfo(methodInfo, "org/cocos2dx/cpp/AppActivity", "showad", "()V")) {
return;
}
methodInfo.env->CallVoidMethod(methodInfo.classID, methodInfo.methodID);
methodInfo.env->DeleteLocalRef(methodInfo.classID);
}
我在 logcat 中遇到了这个错误:
A/libc(6628): Fatal signal 11 (SIGSEGV) at 0x00020004 (code=1), thread 6643 (Thread-553)
有人可以帮忙吗?(对不起英语:))
【问题讨论】:
标签: java android c++ admob cocos2d-x