我无法在我的应用程序中显示AdMob横幅

时间:2014-09-05 14:34:08

标签: java android admob

我尝试在我的应用中实施AdMob横幅,但它没有显示。我已经使用了横幅,我总是以同样的方式使用..我有一个FrameLayout的视图。此FrameLayout位于LinearLayout;

<FrameLayout
        android:layout_margin="5dp"
        android:layout_width="wrap_content"         
        android:layout_height="wrap_content"      
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true" >
    <com.google.ads.AdView 
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="MyId"
        ads:adSize="BANNER"
        ads:loadAdsOnCreate="true"/>
    </FrameLayout>

这是java部分:

adview = (AdView) findViewById(R.id.adView);
        adview.loadAd(new AdRequest());

并在清单中:

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

包含所有元数据:

<meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />

    <activity
        android:name="com.google.android.gms.ads.AdActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />

2 个答案:

答案 0 :(得分:1)

你正在混淆。您正在使用GoogleAdMobAdsSdk-6.4.1.jar的新旧api。你应该坚持使用新的API(通过谷歌播放服务admob)。确保您在项目的/libs/文件夹中没有GoogleAdMobAdsSdk-6.4.1.jar。然后,引用项目中的Google Play服务库并进行​​以下更改:

在布局文件中,更改:

  xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

 <com.google.ads.AdView 
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="MyId"
        ads:adSize="BANNER"
        ads:loadAdsOnCreate="true"/>

为:

 xmlns:ads="http://schemas.android.com/apk/res-auto"

 <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        ads:adUnitId="MY_AD_UNIT_ID"
        ads:adSize="BANNER"/>

在您的java代码中,更改:

import com.google.ads.AdRequest;
import com.google.ads.AdView;

adView.loadAd(new AdRequest());

为:

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

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

点击Ctrl + Shift + O即可导入到正确的包

您还可以按照有关迁移到新admob here的官方指南进行操作。

确保使用Google Play服务版本4或更高版本。您可以检查其manifestCode的清单xml文件。感谢

答案 1 :(得分:0)

com.google.ads.AdView更改为com.google.android.gms.ads.AdView