我正在尝试对应用程序进行漫长的冷启动-这需要5..10秒,具体取决于(不确定)Android OS的状态。
在整个代码中添加了System.currentTimeMillis()
之后,我发现大约有50%的时间进入了((LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(...)
具有最佳性能的启动膨胀如下所示:
(电话在Snapdragon 820 + Android 8.1 / LineageOS 15.1上运行)
在我单击应用程序并返回到同一视图之后,包括所有膨胀的整个初始化工作大约快了10倍,并且性能似乎还不错。
问题是-有什么想法可以提高冷启动时的充气性能?
(我怀疑这是由于Android Java VM正在预热引起的,但是10倍以上的性能差异似乎令人怀疑。如果是这种情况,那么我无能为力了