我正在尝试在我的应用中实现admob,但我无法让它工作。
我有一个A类,这是主要类,它扩展了活动。我有一个 B 类,它是应用程序启动时调用的类。我在 A 类中有以下代码来存档它:
B b = new B(this);
setContentView(B);
在B类中,我有一个带有测试和位图的画布。我想在画布上放一个带有 admob 的广告,但我无法将其存档。B类:
private AdView adView;
int[] degree = { 90, 180, 270, 360 };// random graden eindposities pijl
// int width, height;
Random rand = new Random();
Typeface font;
Matrix matrix = new Matrix();// degree,x,yaxis
Region region;// region die klikbaar is om het pijl te bewegen
AlertDialog alertDialog;
LinearLayout layout;
public YesNo(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
public boolean onTouchEvent(MotionEvent event) {
//do something
}
@Override
protected void onDraw(Canvas canvas) {
//Do something
invalidate();
}
我尝试使用此代码(以及其他代码)实现AdMob:
public void ads() {
adView = new AdView((Activity) getContext(), AdSize.BANNER,
"xxxxxxxxxxx");
LinearLayout.LayoutParams params;
params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
// Create a linear layout
LinearLayout layout = new LinearLayout((Activity) getContext());
layout.setOrientation(LinearLayout.VERTICAL);
layout.setPadding(6, 6, 6, 6);
layout.addView(adView, params);
}
我搜索了几个小时寻找解决方案,但找不到任何解决方案。
有人可以帮助我朝着正确的方向前进吗?
首先,您的AdView
需要成为内容视图的一部分。 您在ads()
函数中创建的LinearLayout
。 其次,您需要创建一个广告请求,并在广告中加载该请求:
AdRequest request = new AdRequest();
request.addTestDevice(AdRequest.TEST_EMULATOR); // get test ads on emulator.
adView.loadAd(request);
请查看文档,详细了解如何设置 AdView。
在ads
函数中,您实际上并没有使用您创建的 LinearLayout - 您需要将其放入另一个布局或直接放入您的活动中,使用 setContentView