我有一个使用WebView的即时游戏。 如果我构建apk并将其作为普通的Android应用程序运行,则视图上的渲染在所有版本的Android上都可以非常快速地工作。 我将此游戏作为即时应用程序上传到Google Play,并尝试通过立即尝试按钮启动它。 在这种情况下,渲染会非常滞后,并且问题仅在具有5-7.x安卓版本的设备上,对于8+来说一切都很好。 日志显示在这些设备上使用了Canvas Renderer而不是WebGl Renderer。 但是,通常在所有设备上启动游戏(而不是立即尝试)都使用WebGL。
我在Android 5.0上使用android:hardwareAccelerated = true设置启动了游戏,并且使用Canvas Renderer并没有降低应用程序的运行速度。 因此,即使没有WebGl渲染的旧设备也具有可接受的速度。
然后,我使用android:hardwareAccelerated = false在8台以上的设备上启动了游戏 首先,设备开始使用Canvas渲染器而不是WebGl。 其次,渲染速度明显变慢。
从这一切开始,我几乎可以确定问题仅在于配置hardwareAccelerated设置。
在这种情况下,出现了问题。为什么游戏的Instant版本会禁用hardwareAccelerated设置,并且 仅适用于5-7.x设备吗?还有其他原因导致WebView仅在Instant版本中且仅在 5-7.x设备?