检查应用程序是否从内存中恢复

时间:2013-09-06 13:51:48

标签: android startup onresume

我想知道是否有办法查看应用程序是否从内存中恢复?

我需要在启动时下载文件,但我不想使用onResume(),因为它会在回到堆栈时被触发。

仅在应用程序从例如主屏幕。

有人做过类似的事吗?

致敬/ Henric

2 个答案:

答案 0 :(得分:1)

使用静态字段(例如对文件内容的引用,或指示最近下载它的布尔值)。如果应用程序被终止并重新启动,则静态字段将为null。如果它只是在应用程序生命周期中没有死亡,那么该字段将不会被重置。

这可能或者可能不是您需要的 - 不能保证Android应用程序不会运行数天,或者它不会被完全杀死并经常重启。您可能真正想要做的是在文件旁边存储时间戳,如果时间戳早于某个阈值,则重新下载文件。

答案 1 :(得分:0)

使用onCreate。这仅在启动apk时被调用(不一定来自启动器),因为它已被破坏并需要重新创建。

但是,这意味着如果用户从启动器启动应用程序但已经停止,则不会下载该文件。

阅读Life Cycle Documentation了解详情。