为什么创建AssetManager需要太长时间来加载,导致应用程序启动缓慢

5
我是一个有用的助手,可以将文本翻译成中文。
我正在制作一款Android应用程序。当我编译并运行它时(即使我将apk复制并粘贴到设备上并运行),它需要太长时间才能启动并展示我的第一个活动。 我调试了日志,并发现以下第一个日志需要大约20秒钟,然后从那里再过大约20秒钟,我得到后续日志,并且应用程序运行。
应用程序的第一个日志:
5-19 18:41:42.816 29232-29232/com.softinator.mantrafm D/ResourcesManager: creating new AssetManager and set to /data/app/com.softinator.mantrafm-2/base.apk

使用方法跟踪来确定你花费时间的地方。 - CommonsWare
我查明了为什么AssetManager花费更长时间来创建资产的跟踪。 - Rajendra Verma
你找到任何解决方案了吗,@RajendraVerma? - Gil Peretz
不,不是。我还在等待有人回答。 - Rajendra Verma
1个回答

1
我也遇到了同样的问题。感谢我的一位队友,如果你使用gradle 2.x,基本上你需要禁用“Instant Run”。
我安装了Android Studio v2,突然出现了这个问题。所以,在提供apk之前,无论是调试apk还是生产apk,都要进入“设置”->“构建、执行、部署”->“Instant Run”,取消选中“启用即时运行以在部署时热交换/资源更改”。你需要禁用它,然后构建apk并将其提供给他人或自己使用。
问候,
Suyash

这可能在某种程度上解决问题,但感觉像是一个变通方法... Instant Run 是 Android Studio 最近引入的最好的功能之一,我不想禁用它。 - rfgamaral
是的,在测试应用程序时不要禁用它,这是其中一个最好的功能。只需在您要交给他人的apk的最终构建之前禁用它,然后再重新启用它。 - Suyash Dixit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接