AdMob不提供在后台获取原生广告的功能。原生广告是通过AdMob广告服务器在实时进行请求和加载的。您需要在前端代码中请求和加载原生广告。
以下是一个获取AdMob原生广告的示例代码:
implementation 'com.google.android.gms:play-services-ads:20.4.0'
import com.google.android.gms.ads.AdLoader;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.formats.UnifiedNativeAd;
import com.google.android.gms.ads.formats.UnifiedNativeAdView;
// 初始化AdMob
MobileAds.initialize(this);
// 创建AdLoader对象
AdLoader adLoader = new AdLoader.Builder(this, "YOUR_AD_UNIT_ID")
.forUnifiedNativeAd(new UnifiedNativeAd.OnUnifiedNativeAdLoadedListener() {
@Override
public void onUnifiedNativeAdLoaded(UnifiedNativeAd unifiedNativeAd) {
// 原生广告加载成功回调
// 将原生广告展示到容器中
UnifiedNativeAdView adView = (UnifiedNativeAdView) getLayoutInflater()
.inflate(R.layout.native_ad_layout, null);
populateNativeAdView(unifiedNativeAd, adView);
nativeAdContainer.addView(adView);
}
})
.build();
// 加载广告
adLoader.loadAd(new AdRequest.Builder().build());
// 将原生广告填充到视图
private void populateNativeAdView(UnifiedNativeAd nativeAd, UnifiedNativeAdView adView) {
// 设置原生广告的标题
adView.setHeadlineView(adView.findViewById(R.id.ad_headline));
((TextView) adView.getHeadlineView()).setText(nativeAd.getHeadline());
// 设置原生广告的图标
adView.setIconView(adView.findViewById(R.id.ad_icon));
((ImageView) adView.getIconView()).setImageDrawable(nativeAd.getIcon().getDrawable());
// 设置原生广告的描述文本
adView.setBodyView(adView.findViewById(R.id.ad_body));
((TextView) adView.getBodyView()).setText(nativeAd.getBody());
// 设置原生广告的Call-to-Action按钮
adView.setCallToActionView(adView.findViewById(R.id.ad_call_to_action));
((Button) adView.getCallToActionView()).setText(nativeAd.getCallToAction());
// 设置原生广告的广告媒体内容
adView.setMediaView(adView.findViewById(R.id.ad_media));
adView.getMediaView().setMediaContent(nativeAd.getMediaContent());
// 注册原生广告的点击事件
adView.setNativeAd(nativeAd);
}
请注意,上述示例中的"YOUR_AD_UNIT_ID"需要替换为您自己的广告单元ID。
这样,您就可以在前端代码中加载并显示AdMob的原生广告了。