当我尝试将测试广告合并到我的应用中时,它不显示广告并创建错误:**错误:非静态方法addTestDevice(String)无法从静态上下文引用**我不是确定如何解决这个问题,所以提前谢谢。
AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
AdRequest.Builder.addTestDevice("DF738A0CF9E96DB06B085AADFEDCF0CF");
android:layout_alignEnd="@+id/main_screen_titletwo"
android:textColor="#ff000000" />
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="xxx"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
修改编辑
没有意识到我的单位是在那里所以我把它放进去了。
答案 0 :(得分:4)
错误是因为您在addTestDevice()
类上静态调用Builder
函数,而不是Builder()
构造函数返回的实例
但是你应该这样做:
AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice("DF738A0CF9E96DB06B085AADFEDCF0CF")
.build();
mAdView.loadAd(adRequest);
因为在您调用build()
之后添加测试设备不会产生任何影响。
此代码的作用是通过调用AdRequest.Builder
来创建AdRequest.Builder()
对象,然后在对象上调用addTestDevice()
,然后在其上调用build()
以返回AdRequest
1}}。
答案 1 :(得分:1)
在声明static
addTestDevice(String)