以编程方式设置 AdMob ID 字符串



我正在开发几个使用常见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>

我知道,我可以通过编程方式执行此操作,而不是从XML实例化AdMob,或者我可以将main.xml复制到每个项目并修改那里的ID,而不是使用我的库中的那个。 但是我会更高兴使用类似于上面示例代码的解决方案,它让我可以将AdMob代码保存在main.xml中,并且在更改时不会让我在 n 个地方更新main.xml

我一直无法找到AdMob附带的可交付成果的类引用或完整描述,并且自动完成没有向我显示任何似乎适合此需求的方法。 如果有人能指出我一个对AdMob类有很好的描述的地方,那将是一个很大的帮助。

在 XML 中为 AdView

设置一个空占位符视图(在本例中为 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); 

我做了以下

  1. 在您的库项目中,添加字符串.xml一个值为 " 的元素,该元素表示 adUnitId。

    <string name="ad_unit_id"></string>`
    
  2. 在版式中插入广告视图

    ads:adUnitId="@string/ad_unit_id"`
    
  3. 在您的其他项目中,添加字符串.xml具有当前 adunitId 的相同元素

    <string name="ad_unit_id">XXXXXXXXXXXXXXXXX</string>`
    

享受:)

最新更新