如何减少在冷启动时启动应用程序所需的时间

How to reduce the time taken to launch the app in cold start

我正在尝试优化我的应用程序。我们在我们的应用程序中启动了插页式广告。当有广告时,应用程序需要大约 7-8 秒才能启动主屏幕。当广告不可用时,启动主屏幕需要 3 秒。问题出在 cold start:应用程序首次启动时,在 installationupdate 之后。该应用程序需要大约 4-5 seconds 才能显示我的 splash screen。我知道这是因为当应用程序第一次启动时,OS 需要时间来初始化应用程序并且对大多数应用程序来说都是常见的。但我观察到很少有应用程序启动主屏幕的时间非常短,几乎看不到黑屏。我可以通过将自定义主题设置为 activity 来避免黑屏。但我想减少黑屏和启动画面之间的时间。对于其他发射,black screensplash screen 之间几乎不需要 1 秒。有什么可以做的,以减少首次启动的延迟

取决于您如何组织 Home/Splash Activity 以及您在 Activity 生命周期回调中定义繁重任务的位置。

一般来说,测试您的应用程序,看看哪些方法比其他方法花费更多时间,然后从优化它们开始。 尝试在 onCreate() 和 onStart() 上做最少(不)的工作。 将耗时的工作发送到后台线程。

此外,您可以查看 Chet Haase 的第 9 部分 post 的 Launch Fast 部分。 https://medium.com/google-developers/developing-for-android-iii-2efc140167fd#.7fkyvlowf