Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我们应该先调用MobileAds.setRequestConfiguration还是MobileAds.initialize?_Android_Admob - Fatal编程技术网

Android 我们应该先调用MobileAds.setRequestConfiguration还是MobileAds.initialize?

Android 我们应该先调用MobileAds.setRequestConfiguration还是MobileAds.initialize?,android,admob,Android,Admob,关于这方面的文档不多。我在想,我们应该先打电话吗 RequestConfiguration conf= new RequestConfiguration.Builder() .setMaxAdContentRating( MAX_AD_CONTENT_RATING_T) .build(); MobileAds.setRequestConfiguration(conf); MobileAds.initialize(context,

关于这方面的文档不多。我在想,我们应该先打电话吗

RequestConfiguration conf= new RequestConfiguration.Builder()
        .setMaxAdContentRating(
                MAX_AD_CONTENT_RATING_T)
        .build();

MobileAds.setRequestConfiguration(conf);
MobileAds.initialize(context, APP_ID);


尽管谷歌建议尽早调用
MobileAds.initialize

在加载广告之前,让您的应用程序通过以下方式初始化移动广告SDK 调用MobileAds.initialize()初始化SDK并调用 初始化完成后(或在 30秒超时)。这只需要做一次,最好是在应用程序上 发射

它们还提到在
MobileAds.initialize
之前需要设置“请求特定标志”

警告:移动Ads SDK或中介可能会预加载Ads 调用MobileAds.initialize()时的伙伴SDK。如果你需要 获得欧洲经济区(EEA)用户的同意,设置任何 请求特定标志(例如tagForChildDirectedTreatment或 在装运前,为未经同意的货物贴上标签,或采取其他措施 ads,请确保在初始化移动ads SDK之前执行此操作

因此,还不太清楚应该先打哪一个电话。

根据这位官员的说法

在加载ads之前,让您的应用程序通过调用
MobileAds.initialize()
初始化移动ads SDK,一旦初始化完成(或在30秒超时后),它将初始化SDK并回调完成侦听器。这只需要做一次,最好是在应用程序启动时

因此,您应该首先初始化
MobileAds
,查看官方文档中的示例:

   protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    MobileAds.initialize(this, new OnInitializationCompleteListener() {
        @Override
        public void onInitializationComplete(InitializationStatus initializationStatus) {
        }
    });
    mAdView = findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder().build();
    mAdView.loadAd(adRequest);
}

根据谷歌开发者支持,以下是正确的方法


RequestConfiguration.Builder
一起使用如何?
MobileAds的示例不多。initialize
。builder用于生成广告请求以显示在adview上,在此之前,您应该初始化您的MobileAds。如果您查看同一页面,则需要在“MobileAds.initialize”之前调用“请求特定标志”。“tagForChildDirectedTreatment”在
RequestConfiguration
中提供,是的,但他们只是要求添加将在RequestConfiguration中识别的标志。是的,但他们只是要求添加将在RequestConfiguration中识别的标志。您应该在应用程序类中执行此操作!
   protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    MobileAds.initialize(this, new OnInitializationCompleteListener() {
        @Override
        public void onInitializationComplete(InitializationStatus initializationStatus) {
        }
    });
    mAdView = findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder().build();
    mAdView.loadAd(adRequest);
}
RequestConfiguration conf= new RequestConfiguration.Builder()
        .setMaxAdContentRating(
                MAX_AD_CONTENT_RATING_T)
        .build();

MobileAds.setRequestConfiguration(conf);
MobileAds.initialize(context, APP_ID);