AdMob libGDX与Google Play服务

Chi*_*nut 2 java android admob libgdx google-play-services

在过去的几天里,谷歌正在强制使用Google Play Services Mobile广告作为Android adMob的下一个版本.我是一个全新的admob,我正试图在我的libGDX安卓游戏中测试广告,但无法弄清楚如何做到这一点,因为无论我做什么,我都会得到一定数量的错误.我已经看过其他示例,但它们都适用于adMob 6.4.1(或更早版本),现在被认为是遗留的.我只想在屏幕底部放置一个广告横幅,但无法弄清楚如何做到这一点.有人可以发布我的Android MainActivity需要的内容以及我需要对manifest和xml做的任何事情.

它需要使用libGDX,然而视图系统将与之合作

非常感谢你!

Nan*_*tey 5

按照官方指南迁移到新的admob这里.然后按照libgdx wiki指南中admob完成迁移.这很简单.

您需要在MainActivity类中进行的更改包括:

改变线条:

 AdView adView = new AdView(this, AdSize.BANNER, "xxxxxxxx"); // Put in your secret key here
      adView.loadAd(new AdRequest());
Run Code Online (Sandbox Code Playgroud)

至:

AdView adView = new AdView(activity);
adView.setAdUnitId("xxxxxxx");
adView.setAdSize(AdSize.BANNER);
adView.loadAd(new AdRequest.Builder()
.build());
Run Code Online (Sandbox Code Playgroud)

此外,由于您希望广告显示在屏幕底部,请按以下方式修改adParams:

RelativeLayout.LayoutParams adParams = 
            new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, 
                    RelativeLayout.LayoutParams.WRAP_CONTENT);
        adParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
        adParams.addRule(RelativeLayout.CENTER_HORIZONTAL);
Run Code Online (Sandbox Code Playgroud)

在您的清单文件中,

更改:

<activity android:name="com.google.ads.AdActivity"/>
Run Code Online (Sandbox Code Playgroud)

至:

<activity android:name="com.google.android.gms.ads.AdActivity" 
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>`

<meta-data android:name="com.google.android.gms.version"
           android:value="@integer/google_play_services_version"/>
Run Code Online (Sandbox Code Playgroud)

您无需在xml布局中定义广告视图,因为它已在MainActivity类中以编程方式完成.您还可以实施AdListener以收听广告回调.