我已经扩展了GLSurfaceView并实现了我自己的GLSurfaceView.Renderer来创建我的第一个相对简单的2D OpenGLES游戏。XML FrameLayout降低了我的OpenGL SurfaceView帧率(fps)
我一直在活动onCreate方法上使用以下代码测试我的游戏,该方法将表面视图设置为内容视图,并从中获取恒定的60fps。
60fps的活动:
mGLView = new OpenGLTest1SurfaceView(this);
setContentView(mGLView);
不过我现在已经转移到一个XML布局,使我可以将AdMob广告覆盖在屏幕的右下角,
AdMob的XML:
<Frame Layout...
<...OpenGLTest1SurfaceView...
<com.google.ads.adView...
admob活动:
setContentView(R.layout.main);
现在我的应用程序在43fps和60fps之间波动,看似随机的时间间隔。我已经看过LogCat,并且GC没有过度运行(每20秒左右一次)。
- 当我将表面视图移动到XML布局时,我是否应该预期较低的帧频?
- 是否有另一种显示admob广告而不使用XML布局的方法?
- 有什么我可以做的,以确定为什么我的应用程序FPS在特定时间降低?
任何帮助将不胜感激,因为我希望能够在不久的将来通过我的OpenGL应用程序货币化。
我决定接受窗口的答案,因为这确实增加了我的帧率 - 不过,我将奖赏奖给@RajPara作为他的回答,因为它解释了如何将admob视图添加到现有布局。 – TerryProbert 2012-04-25 18:12:57