为什么材料设计的应用程序比传统的holo设计应用程序慢

Che*_*eng 8 performance android

我的传统holo应用程序曾经非常快速地启动.

最近,我花了1年兼职,将holo app移植到材料设计的应用程序.这是我所做的一些重大改变.

  1. 从API 21到API 23
  2. ActionBarSherlockAppCompat工具栏支持库
  3. 从支持库v4:22.1.1到v4:23.2.1
  4. 最终编译的APK大小从4~5 MB变为5~6 MB.

我现在面临的一个问题是我的材料设计应用程序启动速度慢.它比我的全息设计应用程序显着更慢(超过2秒).

快速启动全息应用程序的速度

https://youtu.be/NguClpd6rG0

材料设计app的启动速度慢

https://youtu.be/TdnlZey0ABM

注意,在启动应用程序之前,我已经确保我提前终止了进程(通过设置 - >应用程序 - >强制停止).

正如您从视频中看到的那样,一旦我点击图标,ActionBar立即显示全息应用程序.对于材料设计的应用程序,您需要等待大约2至3秒,只有Toolbar将显示.

起初,我想用来TraceView调试和导致缓慢的原因.但是,我意识到TraceView只能在已经启动的应用程序上使用.

我已经证实我没有在我的执行任何耗时的任务Application,ActivityFragment.由于我的全息应用程序和材料设计的应用程序共享相同的逻辑代码,我无法弄清楚我的材料设计应用程序的速度较慢的原因.

有没有人面临同样的问题?我想知道,有没有什么好方法可以找到根本原因?

Che*_*eng 1

这是假阴性!正如@MarkKeen 和@Nilabja 所评论的,这可能是由新的Android Studio 2.0 引起的。(在以前版本的Android Studio中,没有遇到这个问题)

我使用的是Android Studio 2.0。

虽然我通过点击图标启动应用程序,但该应用程序是通过 Android Studio 中的绿色播放按钮上传的。如果我在发布模式下使用签名密钥重建 APK,则不会出现 3 秒白屏。它的速度与之前的 Holo 应用程序相当。