我搜索过,但找不到问题的相关答案。
偶尔,我的Android应用程序加载速度很慢。我通常使用后退按钮关闭应用程序。当我再次启动我的应用程序时,有时,应用程序需要时间来加载,特别是在从主活动开始其他活动之后。我使用Intent.FLAG_ACTIVITY_SINGLE_TOP
标志加载新活动。
我怀疑按下后退按钮后活动没有正常停止;所以,当我在其他时间重新启动应用程序时,我的加载速度很慢。如果我在重新启动之前强制停止应用程序,它会立即加载。
我的问题是
finish()
放在活动位置吗?Intent.FLAG_ACTIVITY_SINGLE_TOP
进行转换
另一个活动,是一个正确的旗帜吗?由于
答案 0 :(得分:2)
FLAG_ACTIVITY_SINGLE_TOP
如果设置,如果活动已经在历史堆栈的顶部运行,则不会启动该活动。
这意味着您的活动未启动。我建议你不要使用任何标志来开始活动。但我不能确定,除非你粘贴一些代码并明确指出你想要实现的目标。
另一个注意事项:我怀疑你是否想要"销毁"当用户按下"返回"按钮。你应该保留它的默认值。虚拟机将根据需要销毁您的应用程序。
PS:我作为开发人员使用BetaGlide(移动应用程序性能测试工具)监督的其中一个应用程序遇到了类似的问题,并且通过上述步骤,然后使用betaglide测量结果我们能够解决它。 / p>答案 1 :(得分:0)
当您按下后退按钮时,您可以检查是否已调用onDestroy(),这意味着您的活动是否被终止。