以编程方式设置AdMob id String

jbw*_*bww 1 xml android admob

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

我知道,而不是实例AdMobXML,我能做到这一点编程,或者说我可以复制main.xml到每一个项目和修改ID在那儿,而不是使用一个在我的图书馆.但是我会更喜欢一个类似于我上面的示例代码的解决方案,它允许我保留AdMob代码main.xml并且不会让我main.xml在更改时在n个位置更新.

我无法找到附带的可交付成果的类引用或完整描述AdMob,并且自动完成不会向我显示任何看似符合此需求的方法.如果有人会把我指向一个对AdMob课程有很好描述的地方,那将是一个很大的帮助.

Smu*_*rik 5

为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)


asa*_*tai 5

我做了以下

  1. 在您的库项目中,在 string.xml 中添加一个值为“”的元素,表示 adUnitId。

    <string name="ad_unit_id"></string>`
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在您的布局中插入 adView

    ads:adUnitId="@string/ad_unit_id"`
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在您的其他项目中,在 string.xml 中添加与当前 adunitId 相同的元素

    <string name="ad_unit_id">XXXXXXXXXXXXXXXXX</string>`
    
    Run Code Online (Sandbox Code Playgroud)

享受 :)