我正在开发一款游戏,它的发展非常顺利.我确实对AdMob广告提出了一些问题.每次广告刷新或广告的不同方面,我的帧速率都会下降,几乎使游戏无法播放.以下是我加载广告的内容……
ad = new AdView(this,AdSize.BANNER,"..."); AdRequest adRequest = new AdRequest(); adRequest.addTestDevice("..."); adRequest.addTestDevice("..."); RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT); lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); lp.addRule(RelativeLayout.CENTER_HORIZONTAL); ad.setLayoutParams(lp); RelativeLayout layout = new RelativeLayout(this); layout.addView(renderView); layout.addView(ad); ad.loadAd(new AdRequest()); setContentView(layout);
我在SurfaceView上呈现广告的解决方案是将其添加到RelativeLayout并将SurfaceView和AdView添加到它.这一切都运行得很好,但每次广告刷新(UI或新广告请求)时,它都会使UI线程陷入困境,从而减慢渲染线程的速度.
是否有一种方法可以让所有这些工作很好地完成所有工作由AdView与主线程分开完成?我不太确定从另一个线程动态更新当前布局.
谢谢您的帮助.