【发布时间】:2014-11-28 16:17:38
【问题描述】:
我为我的游戏设置了一个带有横幅单元的 AdMob 帐户。在互联网上寻找有关如何使用 Cocos2d-x 为 Android 实施 AdMob 的教程很容易,但现在我遇到了一个我似乎找不到解决方案的问题。
我的横幅没有显示在屏幕顶部,我在 Logcat 中收到以下 3 条消息:
I/Ads(19290): Starting ad request.
W/Ads(19129): There was a problem getting an ad response. ErrorCode: 0
W/Ads(19129): Failed to load ad: 0
这让我认为我正确地实现了横幅代码,但还有其他错误。另一个奇怪的观察:如果我从我的清单中删除权限 INTERNET 和 ACCESS_NETWORK_STATE,横幅会显示,说我需要启用查看广告的权限。
这是我用来创建横幅的代码。我不认为它有什么问题,并且从我上面复制粘贴的日志中可以看到,没有抛出异常。
private void adCreate() {
adView = new AdView(this);
adView.setAdUnitId(AD_UNIT_ID); // In my code I set the real value from the AdMob website
adView.setAdSize(AdSize.BANNER);
try {
AdView.LayoutParams layoutParams = new AdView.LayoutParams(
LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
RelativeLayout relativeLayout = new RelativeLayout(this);
RelativeLayout.LayoutParams rlp = new RelativeLayout.LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
relativeLayout.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL);
adView.setLayoutParams(layoutParams);
relativeLayout.addView(adView);
addContentView(relativeLayout, rlp);
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice("XXXXXXXXXX") // In my code I set the real value I got from Logcat
.build();
adView.loadAd(adRequest);
} catch (Exception e) {
Log.e("Ads", "AdMob Error: " + e);
}
// Setup AdListener
adView.setAdListener(new AdListener() {
public void onAdLoaded() {
Log.i("Ads", "onAdLoaded");
adView.bringToFront();
}
});
}
我不知道发生了什么,我什至尝试在 AdMob 网站上归档我的单元并创建一个新的用作广告单元 ID,但无济于事。
谢谢!
编辑:似乎错误 0 是“内部错误”。不知道这指向什么或错误可能来自哪里。
【问题讨论】:
-
愚蠢的问题,但您是否确认您的手机/平板电脑可以访问互联网?
-
是的,我已经连接到我的 Wifi 并且可以浏览互联网了。