3

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

4

1 回答 1

1

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

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

此外,您可以查看 Chet Haase 撰写的这篇 9Part 帖子的“快速启动”部分。https://medium.com/google-developers/developing-for-android-iii-2efc140167fd#.7fkyvlowf

于 2016-05-18T10:39:32.240 回答