Android adMob:广告不显示(尝试了一切)
我有一个问题,AdMob广告没有显示在我的物理设备上的测试应用程序中。我几乎浏览了所有类似的问题,运气不好。因此,我的xml中有一个经典的AdView声明:Android adMob:广告不显示(尝试了一切),android,admob,Android,Admob,我有一个问题,AdMob广告没有显示在我的物理设备上的测试应用程序中。我几乎浏览了所有类似的问题,运气不好。因此,我的xml中有一个经典的AdView声明: <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content"
<com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="my_actual_publisher_id"
ads:adSize="BANNER"/>
我的AdMob仪表板未显示任何请求。。。我做错了什么?谢谢
编辑:一个奇怪的事实也许值得一提:我试图在TableLayout中将包含我的广告的TableRow向上移动,以防这是渲染空间或类似的问题。当我试图以编程方式获取一个视图时,我现在遇到了类强制转换异常,该视图以前位于我的广告之前,现在位于:
Button clearButton=(Button)view.findViewById(R.id.clearButton)
在我的activity.onCreate()中,我正在执行上面的代码以执行一些初始化,此代码现在失败,出现异常:
java.lang.ClassCastException:android.widget.TableRow不能强制转换为android.widget.Button
就好像我的R类没有被重新编译,它的指针指向任何地方 我过去常在我的应用程序中添加此简单代码。希望它也能帮助你……:) 在要显示add的位置调用此方法 将此添加到您的清单中:
<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" />
别忘了添加库
**************检查您是否从这里获取您的Add unit id*******************
您在logcat中看到了什么(与Admob标签相关)?这几乎就是我所看到的。。。我必须是真正的接近,因为例如,当我忘记了AdView定义中的“adSize”时,我有一个很好的警告出现在我的广告应该出现的地方。我现在想a)xmlns中的问题b)不正确的发布者id(我没有使用与您相同的id,我的id开始于“pub-”而不是“ca-app-”),那么“ca-app-pub-”是要使用的前缀。如果你的id中没有这个关键字,那么我很确定admob id中有错误。我在答案中附上了一张图片。你可以检查你的add unit id是否是这样的。谢谢,我今晚就试试。当我意识到仅凭“pub-”adMob无法区分来自同一出版商的两个应用程序时,我产生了怀疑。奇怪的是,我使用了那个ID,因为这几乎就是我从互联网上读到的所有东西中发现的那个ID。。。我猜我看错了:)是的,就是这样!感谢您的帮助,它现在工作得非常好:)
AdView adView = (AdView) result.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().addTestDevice("my_real_device_id").build();
adView.loadAd(adRequest);
private static final String AD_UNIT_ID = "ca-app-pub-7742695752659854/6319679360"; // admob id
// ******************************** For Admob
private void createBanner() {
// Create an ad.
adView = new AdView(this);
/*
* Ad unit name : MobilePASystemBanner in the AdMob Website. App Name :
* MobilePASystem .
*/
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(AD_UNIT_ID);
/*
* Add the AdView to the view hierarchy. The view will have no size
* until the ad is loaded.
*/
// a linear layout at the bottom to display an add (make it in your xml also)
mlnr_displayBanner.addView(adView);
/*
* Create an ad request.
*/
AdRequest adRequest = new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build();
/*
* Start loading the ad in the background.
*/
try {
adView.loadAd(adRequest);
} catch (Exception e) {
e.printStackTrace();
}
}
<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" />