代码之家  ›  专栏  ›  技术社区  ›  Henric

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

  •  0
  • Henric  · 技术社区  · 11 年前

    我想知道是否有一种方法可以查看应用程序是否从内存中恢复。

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

    仅当从主屏幕恢复应用程序时。

    有人做过类似的事情吗?

    2 回复  |  直到 4 年前
        1
  •  1
  •   fadden    11 年前

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

    这可能是你需要的,也可能不是你需要的——不能保证安卓应用程序几天内不会运行,也不能保证它不会被完全杀死并频繁重启。实际上,您可能想做的是在文件旁边存储一个时间戳,如果时间戳早于某个阈值,则重新下载该文件。

        2
  •  0
  •   hoss    11 年前

    使用 onCreate 。这只在apk启动时调用(不一定是从启动器启动),因为它已被销毁,需要重新创建。

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

    阅读 Life Cycle Documentation 了解更多信息。