【发布时间】:2012-05-12 15:59:26
【问题描述】:
我有一个基于 OpenGL 的应用程序,到目前为止一切正常。该应用由 2 个 Activity 组成,主 Activity 包含 OpenGL 视图,另外一个 Activity 包含用于某些过场动画的电影播放器。
在某些低端设备(例如 LG P690、Android 2.3.4)上,电影活动运行后性能会显着下降。之后,主要活动运行速度非常慢,仅达到约 30 fps 而不是 50 fps。
如果您通过按下主页按钮离开应用程序并重新启动它,您可以“修复”它再次变得更快。然后一切又好了 - 直到再次显示电影查看活动......
我做了一些测试,不管活动 #2 实际做了什么,即使它只是一个闪屏或其他什么,这种效果也会发生。如果我从不调用第二个活动,那么性能总是很高。
注意:OpenGL 活动没有多次实例化,这可能会导致类似的效果。
有人遇到过相同或类似的问题并知道补救措施吗?
【问题讨论】:
-
也许你用来渲染电影的任何东西都使用了opengl-es?我必须承认我在一项活动中做所有事情,但这可能并不总是一个好主意:P
-
无论活动 #2 实际做什么(即使它什么都不做),效果都会发生,因此它绝对与任何电影渲染机制无关。
标签: android performance opengl-es android-activity