Can't add ads to my app.

三世轮回 提交于 2019-12-01 17:26:08

问题


So I followed this guide from admob with Google Play Services, https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#play And I have encountered a problem. The code they provided on their website is not working.I get errors.

    package puske.com;

import com.google.android.gms.ads.*;
import com.google.ads.AdSize;
import com.google.ads.AdView;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;

public class Menu extends Activity {
private AdView adView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.menu);
    // Create the adView.
    adView = new AdView(this);
    adView.setAdUnitId(MY_AD_UNIT_ID);
    adView.setAdSize(AdSize.BANNER);

    // Lookup your LinearLayout assuming it's been given
    // the attribute android:id="@+id/mainLayout".
    RelativeLayout layout = (RelativeLayout)findViewById(R.id.menuz);

    // Add the adView to it.
    layout.addView(adView);

    // Initiate a generic request.
    AdRequest adRequest = new AdRequest.Builder().build();

    // Load the adView with the ad request.
    adView.loadAd(adRequest);

I get error on adView = new AdView(this); the Constructor AdView(Menu) is undefined.

adView.setAdSize(AdSize.BANNER); the Method setAdSize is undefined for the type AdView

And adView.loadAd(adRequest); The method load.ad(adRequest) in the type AdView is not applicable for the arguments (AdRequest)

I added https://developers.google.com/mobile-ads-sdk/docs/?hl=en_US as said in guide, and still doesn't work. http://prntscr.com/2o6vo4


回答1:


You can use layout to show your add. Just put below code in your layout where ever you want into the screen.

     <com.google.ads.AdView
            android:id="@+id/ad"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            ads:adSize="SMART_BANNER"
            ads:adUnitId="Your AddMob ID"
            ads:loadAdOnCreate="true"
            ads:testDevices="TEST_EMULATOR,TEST_DEVICE_ID_GOES_HERE" />  
    </RelativeLayout>

You should have the newest GoogleAdmobSdk.jar in you libs folder. This is working for me.




回答2:


Try to add directly at the import area the following lines

import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;

If you are migrating to new way of use addMob don`t forget to remove the old library.




回答3:


Use

AdRequest.Builder adRequestBuilder = new AdRequest.Builder();
adView.loadAd(adRequestBuilder.build());

EDIT:

Remove

setContentView(R.layout.menu);

add behind loadAd()

setContentView(layout);



回答4:


Remove any other ad sdk(in my case it was adfonic) from your project as there is a conflict and try. Happy Coding :)




回答5:


import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;

AND adding following into layout:

<com.google.ads.AdView
            android:id="@+id/ad"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            ads:adSize="SMART_BANNER"
            ads:adUnitId="Your AddMob ID"
            ads:loadAdOnCreate="true"
            ads:testDevices="TEST_EMULATOR,TEST_DEVICE_ID_GOES_HERE" /> 

works



来源:https://stackoverflow.com/questions/21479203/cant-add-ads-to-my-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!