Google广告无法加载

huangapple go评论108阅读模式
英文:

Google ads are not loading

问题

I am new to this. I have been trying to connect an app to Admob. When I attempt to connect, it always triggers the onAdFailedToLoad() method. This is the same for banner, interstitial and rewarded ads. Please what am I doing wrong?

In the MainActivity, I have:

  1. @Override
  2. public void onCreate(Bundle savedInstanceState) {
  3. super.onCreate(savedInstanceState);
  4. MobileAds.initialize(MainActivity.this, "ca-app-pub-XXXXXXXXXXXXXXXX~XXXXXXXXXX");
  5. // --- Admob ---
  6. view = getWindow().getDecorView().getRootView();
  7. Admob.createLoadBanner(getApplicationContext(), view);
  8. Admob.loadBanner();
  9. // --- *** ---
  10. adView = findViewById(R.id.adView);
  11. adView.loadAd(new AdRequest.Builder().build());
  12. }

In the Admob class, I have:

  1. public static void createLoadBanner(final Context context, View view) {
  2. mAdView = view.findViewById(R.id.adView);
  3. AdRequest adRequest = new AdRequest.Builder().
  4. addTestDevice("ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX").
  5. build();
  6. mAdView.loadAd(adRequest);
  7. mAdView.setAdListener(new AdListener() {
  8. @Override
  9. public void onAdLoaded() {
  10. super.onAdLoaded();
  11. Toast.makeText(context, "Banner Ad has been loaded.", Toast.LENGTH_LONG).show();
  12. }
  13. @Override
  14. public void onAdClosed() {
  15. super.onAdClosed();
  16. Toast.makeText(context, "Banner Ad has been closed.", Toast.LENGTH_LONG).show();
  17. }
  18. @Override
  19. public void onAdOpened() {
  20. super.onAdOpened();
  21. Toast.makeText(context, "Banner Ad has been opened.", Toast.LENGTH_LONG).show();
  22. }
  23. @Override
  24. public void onAdLeftApplication() {
  25. super.onAdLeftApplication();
  26. Toast.makeText(context, "Banner Ad is being redirected.", Toast.LENGTH_LONG).show();
  27. }
  28. @Override
  29. public void onAdFailedToLoad(int errorCode) {
  30. super.onAdFailedToLoad(errorCode);
  31. Toast.makeText(context, "Banner Ad failed to load!", Toast.LENGTH_LONG).show();
  32. // loadBanner();
  33. }
  34. });
  35. }
  36. public static void loadBanner() {
  37. if (!mAdView.isLoading()) mAdView.loadAd(new AdRequest.Builder().
  38. addTestDevice("ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX").
  39. build());
  40. }
英文:

I am new to this. I have been trying to connect an app to Admob. When I attempt to connect, it always triggers the onAdFailedToLoad() method. This is the same for banner, interstitial and rewarded ads. Please what am I doing wrong?

In the MainActivity, I have:

<code>

  1. @Override
  2. public void onCreate(BundleInstanceState bundle) {
  3. super.onCreate(bundle);
  4. MobileAds.initialize(MainActivity.this, &quot;ca-app-pub-XXXXXXXXXXXXXXXX~XXXXXXXXXX&quot;);
  5. // --- Admob ---
  6. view = getWindow().getDecorView().getRootView();
  7. Admob.createLoadBanner(getApplicationContext(), view);
  8. Admob.loadBanner();
  9. // --- *** ---
  10. adView = findViewById(R.id.adView);
  11. adView.loadAd(new AdRequest.Builder().build());
  12. }

</code>
<br/>

In the Admob class, I have:

<code>

  1. public static void createLoadBanner(final Context context, View view) {
  2. mAdView = view.findViewById(R.id.adView);
  3. AdRequest adRequest = new AdRequest.Builder().
  4. addTestDevice(&quot;ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX&quot;).//ca-app-pub-3940256099942544/6300978111
  5. build();
  6. mAdView.loadAd(adRequest);
  7. mAdView.setAdListener(new AdListener() {
  8. @Override
  9. public void onAdLoaded() {
  10. super.onAdLoaded();
  11. Toast.makeText(context, &quot;Banner Ad has been loaded.&quot;, Toast.LENGTH_LONG).show();
  12. }
  13. @Override
  14. public void onAdClosed() {
  15. super.onAdClosed();
  16. Toast.makeText(context, &quot;Banner Ad has been closed.&quot;, Toast.LENGTH_LONG).show();
  17. }
  18. @Override
  19. public void onAdOpened() {
  20. super.onAdOpened();
  21. Toast.makeText(context, &quot;Banner Ad has been opened.&quot;, Toast.LENGTH_LONG).show();
  22. }
  23. @Override
  24. public void onAdLeftApplication() {
  25. super.onAdLeftApplication();
  26. Toast.makeText(context, &quot;Banner Ad is being redirected.&quot;, Toast.LENGTH_LONG).show();
  27. }
  28. @Override
  29. public void onAdFailedToLoad(int errorCode) {
  30. super.onAdFailedToLoad(errorCode);
  31. Toast.makeText(context, &quot;Banner Ad failed to load!&quot;, Toast.LENGTH_LONG).show();
  32. // loadBanner();
  33. }
  34. });
  35. }
  36. public static void loadBanner() {
  37. if (!mAdView.isLoading()) mAdView.loadAd(new AdRequest.Builder().
  38. addTestDevice(&quot;ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX&quot;).//ca-app-pub-3940256099942544/1033173712
  39. build());
  40. }

</code>

答案1

得分: 1

请在清单文件的应用程序标签下添加以下内容:

  1. <meta-data
  2. android:name="com.google.android.gms.ads.APPLICATION_ID"
  3. android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>

请按照以下网址确保您已经实施了所有步骤:
https://developers.google.com/admob/android/quick-start

英文:

add this in manifest file under application tag

  1. &lt;meta-data
  2. android:name=&quot;com.google.android.gms.ads.APPLICATION_ID&quot;
  3. android:value=&quot;ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy&quot;/&gt;

follow this url to make sure you have implemented all steps:
https://developers.google.com/admob/android/quick-start

huangapple
  • 本文由 发表于 2020年8月7日 17:01:25
  • 转载请务必保留本文链接:https://go.coder-hub.com/63298582.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定