我正在使用几个使用常见XML界面元素的应用程序.其中一个元素加载AdMob.我可以复制每个项目中的元素,并ID为复制XML文件中的每个应用程序添加唯一,但我想知道是否有一些方法以编程方式设置I应用程序中的D字符串,同时保持XML并且不必在每个项目中复制它.
类似于:
setContentView(R.layout.main);
AdView aView = (AdView)findViewById(R.id.admob);
aView.<method goes here that sets ads:adUnitId>
Run Code Online (Sandbox Code Playgroud)
我知道,而不是实例AdMob从XML,我能做到这一点编程,或者说我可以复制main.xml到每一个项目和修改ID在那儿,而不是使用一个在我的图书馆.但是我会更喜欢一个类似于我上面的示例代码的解决方案,它允许我保留AdMob代码main.xml并且不会让我main.xml在更改时在n个位置更新.
我无法找到附带的可交付成果的类引用或完整描述AdMob,并且自动完成不会向我显示任何看似符合此需求的方法.如果有人会把我指向一个对AdMob课程有很好描述的地方,那将是一个很大的帮助.
为XML中的AdView设置一个空的占位符View(此示例为ListView),然后以编程方式在Java中添加AdView,如:
ListView lv = (ListView)findViewById(R.id.adplaceholder);
//create the AdView (replace MY_BANNER_UNIT_ID with the admob ID of your choice)
AdView av = new AdView(this, AdSize.BANNER, MY_BANNER_UNIT_ID);
lv.addView(av);//add the AdView to your layout
AdRequest request = new AdRequest();
adView.loadAd(request);
Run Code Online (Sandbox Code Playgroud)
我做了以下
在您的库项目中,在 string.xml 中添加一个值为“”的元素,表示 adUnitId。
<string name="ad_unit_id"></string>`
Run Code Online (Sandbox Code Playgroud)在您的布局中插入 adView
ads:adUnitId="@string/ad_unit_id"`
Run Code Online (Sandbox Code Playgroud)在您的其他项目中,在 string.xml 中添加与当前 adunitId 相同的元素
<string name="ad_unit_id">XXXXXXXXXXXXXXXXX</string>`
Run Code Online (Sandbox Code Playgroud)享受 :)
| 归档时间: |
|
| 查看次数: |
3635 次 |
| 最近记录: |