我们一直在AndEngine的基础上开发一个相当大的Android游戏。所以我们有很多资源需要加载,尤其是纹理。
目前,每个屏幕(菜单、商店等)的所有内容(声音、纹理等)都会在应用程序启动时加载(同时显示进度条)。这样用户在游戏开始时只需等待一次约16秒。我们认为从用户的角度来看,这是一个非常令人愉快的解决方案,但在电池使用/内存使用或任何其他原因方面可能会很糟糕吗?
什么论点代表了我们卸载 Activity 屏幕的所有屏幕特定资源并加载下一个屏幕所需的资源的解决方案?
最佳答案
在我看来,最好的方法是“延迟加载”,即仅在需要时才加载资源。这样,您就不会让用户等待他不会使用的资源。所以我所做的是,当应用程序启动时,我在打开的初始屏幕期间加载菜单的资源,当用户进入播放场景时(例如),我卸载菜单资源(从而清除内存),并加载在另一个不同的加载启动画面期间,游戏序列的相关资源。这样,总的来说,用户等待的时间最短,并且内存仅加载所需的资源。
此外,从用户的角度来看,我认为等待整个应用程序加载可能会很烦人,而您只想向 friend 展示您达到的分数。
关于java - 纹理加载: Everything at once OR un-/loading the needed assets?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28548330/