AdMob代码使它们正确无误

时间:2018-08-13 18:34:39

标签: android admob

我正在将Google Play Android应用中的测试代码转换为真实的Admob代码。

我想大多数人都知道了,但不是全部。我真正不确定的是在底部。

1。初始化:

MobileAds.initialize(m_Context, myAppId);

myAppId被AdMob称为AppId。 这正确吗?

它的开始像"ca-app-pub-7..."

2。横幅广告

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    app:adSize="BANNER"
    app:adUnitId="XXX"/>

XXX是AdMob称为横幅广告单元ID。 这正确吗?

它的开始像"ca-app-pub-7..."

3。非页内广告

mInterstitialAd = new InterstitialAd(m_Context);
mInterstitialAd.setAdUnitId(adIdInterstitial);

adIdInterstitial字符串是AdMob所说的插页式广告单元ID。 这正确吗?

它的开始像"ca-app-pub-7..."

4。欧盟隐私事务。

使用implementation 'com.google.android.ads.consent:consent-library:1.0.6',您需要致电:

ConsentInformation consentInformation = ConsentInformation.getInstance(m_Context);
    String[] publisherIds = {adManagerNetworkCode};
    consentInformation.requestConsentInfoUpdate(publisherIds, new ConsentInfoUpdateListener() {
    ... etc

我完全不知道字符串adManagerNetworkCode是什么。 有人可以告诉我这是什么吗?

5。我手机的测试设备ID。

在我的代码中,手机中有一个名为myDeviceIdForTestConsent的字符串,我将其添加到代码中,如下所示:

mInterstitialAd.loadAd(new AdRequest.Builder()
                .addTestDevice(myDeviceIdForTestConsent) // Todo: Remove in Release build
                .build());

我可以留作释放吗?

这是AdMod看到的东西,以便我可以继续测试我的代码,但是当我进行测试时,他们不会不公平地付钱给我吗?如果是这样的话,我肯定会留在这里吗?

1 个答案:

答案 0 :(得分:1)

  1. 您是正确的,并且AppId在测试和生产中都相同。
  2. &3.您是正确的,每种类型的广告单元都有特殊的测试UnitAdId(可在AdMob文档中找到)。当您在AdMob帐户中创建广告单元时,可以找到生产UnitAdId。
  3. adManagerNetworkCode是您的AdMob帐户的PublisherId。您可以在AdMob帐户的设置页面上找到该ID。 https://support.google.com/admob/answer/2784578 https://developers.google.com/admob/android/eu-consent
  4. 删除“ .addTestDevice(myDeviceIdForTestConsent)”。您不希望用户看到测试广告或在接收广告时遇到任何问题。