【问题标题】:Ads doesn't appear没有出现广告
【发布时间】:2016-08-13 22:57:08
【问题描述】:

我有一个 libgdx 游戏,我成功地添加了 Admob 广告。当我使用 Android Studio 在我的物理设备上运行它时,它会显示广告,因为我使用我的设备作为测试设备,但是当我将它从手机发送到另一台设备时,它没有显示广告。当我将 adView 背景设置为黑色时,它只显示了一个没有广告的黑色矩形。

我的问题是:应该将它上传到 Google Play 商店来展示广告还是什么?

这是我的代码:

protected AdView adView;

@Override
protected void onCreate (Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);       

    RelativeLayout layout = new RelativeLayout(this);

    AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
    View gameView = initializeForView(new GameMain(), config);
    layout.addView(gameView, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);

    adView = new AdView(this);
    adView.setAdSize(AdSize.SMART_BANNER);
    adView.setVisibility(View.VISIBLE);
    AdRequest.Builder builder = new AdRequest.Builder();
    adView.loadAd(builder.build());
    adView.setBackgroundColor(0xff000000);
    adView.setAdUnitId("xxxxxxxxxxxxxxxxxxx");

    RelativeLayout.LayoutParams adParams = new RelativeLayout.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT    );
       adParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
    layout.addView(adView, adParams);

    setContentView(layout);
}

【问题讨论】:

  • 请检查我的答案

标签: android libgdx admob


【解决方案1】:

在我看来,问题在于广告尺寸正在发生变化。横幅必须是 Google 指定的精确大小。如果它甚至小几个像素,它就不会显示。我的猜测是,您正在测试的新设备的屏幕更小或纵横比不同,并且这种尺寸差异正在传播到您嵌入广告的视图。不过,如果没有更多信息,我们无法确定。

【讨论】:

  • 我将 adView 大小设置为 SMART_BANNER,我认为问题不在于大小,因为我将背景颜色设置为黑色,并且出现一个黑色矩形,没有广告
【解决方案2】:

您需要指定 admob,您希望在哪些测试设备上看到广告。为此使用addTestDevice

 AdRequest adRequest = new AdRequest.Builder()
        .setBackgroundColor(0xff000000)
        .setAdUnitId("xxxxxxxxxxxxxxxxxxx")
        .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)       // Emulator
        .addTestDevice("FirstDeviceID") 
        .addTestDevice("SecondDeviceID") 
        .build();

adView.loadAd(adRequest);

希望这会有所帮助。

【讨论】:

  • 它在我的设备上显示广告,我添加为测试设备而不是其他设备我的问题是为什么会发生这种情况,或者这是正常的,因为我的应用没有上传到 Google Play 商店
  • 好的,您省略了该代码。然后可能是因为大小。尝试使用普通横幅。将横幅设置为 AdSize.BANNER 并将 WRAP_CONTENT 分配为布局参数。参考this帖子中的代码。
【解决方案3】:

请在设置 admob id 之前检查您加载的代码。您只需在代码中更改它

adView = new AdView(this);
adView.setAdSize(AdSize.SMART_BANNER);
adView.setVisibility(View.VISIBLE);
AdRequest.Builder builder = new AdRequest.Builder();
adView.setBackgroundColor(0xff000000);
adView.setAdUnitId("ca-app-pub-3940256099942544/6300978111");
adView.loadAd(builder.build());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多