以编程方式创建
View adContainer = findViewById(R.id.adMobView);AdView mAdView = new AdView(context);mAdView.setAdSize(AdSize.BANNER);mAdView.setAdUnitId(YOUR_BANNER_ID);((RelativeLayout)adContainer).addView(mAdView);AdRequest adRequest = new AdRequest.Builder().build();mAdView.loadAd(adRequest);
并在您的xml文件中
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:id="@+id/adMobView" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentBottom="true"/></RelativeLayout>
编辑
横幅广告的最佳做法是两次在每个视图中显示一个横幅广告(一个
unitId),如果要在同一屏幕中显示更多横幅广告(不推荐),则必须
unitId从控制台创建另一个横幅广告,并为每个视图创建一个adView
unitId。
我的答案是:
不知道它是否是一个错误,或者
unitId每个adView只能有一个错误
unitId,并且更有意义,因为每个adView
只能有一个错误,并且从文档中读取
它们显示了两种方法来实现此目的,方法是实例化一个新的程序化
AdView()对象设置“
unitIds和”
sizes或“仅”从XML执行。
我做了一些测试以得出这个结论。
通过使用您的中的findViewById
com.google.android.gms.ads.AdView
1-
setAdUnitId如果
adSize先设置,则可以编程。
2-
setAdUnitId如果它已经存在于xml中,则无法以编程方式进行。
3 -如果你没有在你的XML使用“setAdUnitId”,它会提醒
Required xml attribute adUnitId wasmissing,与同为
adSize,即使你设定编程两个属性。
4 -如果不把
setAdUnitId和
setSize,并把它程式设计,AdView中会提醒你
Required xml attributeadUnitId was missing,如果你不设置相同的
adSizeXML格式。
5-以编程方式唯一可以做的就是调用
mAdView.loadAd(adRequest)加载广告
通过使用
new AdView()
1-如果您创建一个空的布局,然后将adView引用添加到此视图,则它将起作用。
2-您可以设置
adSize和以
adUnitId编程方式运行。
3-如果您尝试使用
setAdUnitAd两次
The ad unit ID can only be set once onAdView.,则使用
findViewById
我的结论是:
您只能从XML使用”
<com.google.android.gms.ads.AdViewandroid:id="@+id/adView"android:layout_width="match_parent"android:layout_height="wrap_content"ads:adSize="BANNER"ads:adUnitId="ca-app-pub-my_id_number_was_ommited_by_security" />
并在onCreate上加载视图
AdView mAdView = findViewById(R.id.adView);AdRequest adRequest = new AdRequest.Builder().build();mAdView.loadAd(adRequest);
或完全以编程方式
View adContainer = findViewById(R.id.adMobView);AdView mAdView = new AdView(context);mAdView.setAdSize(AdSize.BANNER);mAdView.setAdUnitId(YOUR_BANNER_ID);adContainer.addView(mAdView);AdRequest adRequest = new AdRequest.Builder().build();mAdView.loadAd(adRequest);
我使用横幅很长时间了,这个答案对我很有帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)