如何在 Android 中展示 AdMob 非个性化原生高级广告?
How to show AdMob Non-Personalized Native Advanced ads in Android?
我尝试了各种不同的方法,但其中 none 似乎有效。
这是由 AdMob 提供的:
Bundle extras = new Bundle();
extras.putString("npa", "1");
AdRequest request = new AdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter.class, extras)
.build();
我使用的代码:
AdLoader.Builder builder = new AdLoader.Builder(this, "ca-app-pub-XXXXX").forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAds) {
if (nativeAds!=null) nativeAd = nativeAds;
CardView cardView = findViewById(R.id.adCard);
NativeAdView adView = (NativeAdView)getLayoutInflater().inflate(R.layout.native_ad_view, null);
populateNativeAd(nativeAd, adView);
cardView.removeAllViews();
cardView.addView(adView);
}
});
广告在未使用 AdRequest
的情况下加载和显示,我无法使用 AdLoader
找到同意的方式
如果其他人面临同样的困惑:
AdRequest
用于此行:
adLoader.loadAd(new AdRequest.Builder().build());
我的错。代码太长,我找不到这一行。
将其更改为:
Bundle extras = new Bundle();
extras.putString("npa", "1");
adLoader.loadAd(new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build());
我尝试了各种不同的方法,但其中 none 似乎有效。 这是由 AdMob 提供的:
Bundle extras = new Bundle();
extras.putString("npa", "1");
AdRequest request = new AdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter.class, extras)
.build();
我使用的代码:
AdLoader.Builder builder = new AdLoader.Builder(this, "ca-app-pub-XXXXX").forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAds) {
if (nativeAds!=null) nativeAd = nativeAds;
CardView cardView = findViewById(R.id.adCard);
NativeAdView adView = (NativeAdView)getLayoutInflater().inflate(R.layout.native_ad_view, null);
populateNativeAd(nativeAd, adView);
cardView.removeAllViews();
cardView.addView(adView);
}
});
广告在未使用 AdRequest
的情况下加载和显示,我无法使用 AdLoader
如果其他人面临同样的困惑:
AdRequest
用于此行:
adLoader.loadAd(new AdRequest.Builder().build());
我的错。代码太长,我找不到这一行。 将其更改为:
Bundle extras = new Bundle();
extras.putString("npa", "1");
adLoader.loadAd(new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build());